상위 질문
타임라인
채팅
관점

상태 레지스터

위키백과, 무료 백과사전

Remove ads

상태 레지스터 또는 플래그 레지스터마이크로프로세서에서 다양한 산술 연산 결과의 상태를 알려주는 플래그 비트들이 모인 레지스터이다.

주로, 조건문과 같은 실행 순서의 분기에 사용된다.

상태 레지스터 플래그

상태 레지스터에는 다음과 같은 플래그들이 있다.

자세한 정보 플래그 기호, 이름 ...
Remove ads

상태 레지스터의 구조

상태 레지스터의 구조는 프로세서의 설계에 따라 플래그의 기능이 약간씩 다를 수 있으며, 일부 아키텍처는 상태 레지스터가 존재하지 않는다.[1]

6502

플래그 바이트로 불리며, 크기는 8비트이다.

7 6 5 4 3 2 1 0
N V B D I Z C
  • Bit 4. 브레이크 플래그 : BRK 인터럽트의 발생을 알려준다.[2]
  • Bit 3. 십진 플래그 : 참일 경우 이진화 십진법 모드에서 동작한다.

Z-80

7 6 5 4 3 2 1 0
S Z H P/V N C
  • Bit 4. Half-carry 플래그 : 이진화 십진법 변환 연산인 DAA와 같은 연산에서 사용.
  • Bit 2. Parity / Overflow 플래그: (마지막) 연산이 (AND, OR, XOR와 같은) 8-bit 논리연산 혹은 shitf 연산이었다면 parity (0이면 odd), 산술계열 연산이었다면 overflow (1이면 overflow)를 나타냄.
  • Bit 1. Negative 플래그 : (마지막) 연산이 빼기 계열의 연산 (SUB, SBC, DEC, CP)이면 1.

8086

8086의 상태 레지스터

플래그 레지스터로 불리며, 크기는 16비트이다.

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
O D I T S Z A P C
  • Bit 10. 디렉션 플래그
Remove ads

각주

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads