레지스터 설명

2026. 2. 2. 12:27·IT Dictionary/Computer Science
반응형

1. 레지스터란?

  • CPU(중앙처리장치) 내부에 존재하는 최고 속도의 매우 작은 메모리
    • 레지스터 > 캐시 > RAM > SSD/HDD
  • CPU가 데이터 처리를 위해 메모리(RAM)에서 데이터를 가져오면 처리 속도가 너무 느림
  • 이를 해결하기 위해  당장 필요한 데이터나 명령어를 CPU 바로 옆에 두고 사용하기 위해 설계된 장치
  • CPU 종류에 따라 수십 개가 존재하며, 각각 용도가 정해져 있음
  • 다음은 표는 레지스터의 구조이고, AH는 상위(High) 비트, AL은 하위(Low) 비트를 의미
RAX (64bit)
EAX (32bit) EAX (32bit)
AX (16bit) AX (16bit) AX (16bit) AX (16bit)
AH (8bit) AL (8bit) AH (8bit) AL (8bit) AH (8bit) AL (8bit) AH (8bit) AL (8bit)

 

2. 범용 레지스터

https://jaebins.tistory.com/110

 

범용 레지스터(EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP)

1. EAX(Accumulator Register)덧셈, 뺄셈 등과 같은 산술 및 논리 연산 결과를 저장mov eax, 5 ; eax = 5add eax, 3 ; eax = eax + 3함수의 반환 값도 저장해줌예를 들어 다음과 같은 코드에 각 매개변수에 10, 20의 argum

jaebins.tistory.com

 

3. 특수 목적 레지스터(Special-Purpose Registers)

  • PC / IP (Program Counter / Instruction  Pointer)
    • 다음에 실행할 명령어의 주소를 가르킴
  • IR (Instruction Register)
    • 현재 실행 중인 명령어 자체를 저장
  • SP (Stack Pointer)
    • 스택 메모리의 최상단 주소를 가리켜 데이터의 삽입/삭제 위치를 알려줌
  • MAR (Memory Address Register)
    • 읽거나 쓰려는 메모리의 주소를 잠시 보관
  • MBR (Memory Buffer Register)
    • 메모리에서 읽어온 데이터나 쓸 데이터를 잠시 보관

 

4. 상태 레지스터(Status / Flag Register)

  • 조건 플래그 (Condition Flags) 
    • ZF (Zero Flag) : 연산 결과가 0이면 1이 됨
    • SF (Sign Flag) : 연산 결과가 음수면 1이 됨
    • CF (Carry Flag) : 연산 중 올림수나 빌림수가 발생하면 1이 됨
    • PF (Parity Flag) :연산 결과에서 1의 개수가 짝수인 지 판별 
    • OV (Overflow Flag) : 연산에서 결과 값이 표현 범위 초과 여부를 판별
  • 제어 플래그 (Control Flags)
    • DF(Direction Flag) : 문자열 처리 시 메모리 주소의 증감 방향 결정 (0: 주소 증가, 1: 주소 감소)
    • IF(Interrupt Flag) : 외부 인터럽트(하드웨어 신호 등)을 허용할지 결정 (0: 무시, 1: 허용)
    • TF(Trap Flag) : 디버깅을 위해 명령어를 한 단계씩 실행(Single-Step) 할 지 결정

 

5. 데이터가 처리되는 흐름 (예시)

  • 컴퓨터가 1 + 2라는 연산을 할 때 레지스터는 다음과 같이 작동
    1. PC가 연산 명령어가 있는 주소를 가리킴
    2. MAR을 통해 해당 주소로 가서 명령어를 가져와 IR에 담음 
    3. 제어장치가 명령을 해석하고, MBR을 통해 숫자 1과 2를 가져와 범용 레지스터에 넣음
    4. **ALU(산술논리장치)**가 계산을 수행하고 결과를 다시 레지스터에 저장합니다.
반응형

'IT Dictionary > Computer Science' 카테고리의 다른 글

범용 레지스터(EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP)  (0) 2026.01.23
git error: remote unpack failed: unable to create temporary object directory 오류  (0) 2023.05.16
리눅스(Linux) 터미널 필수 명령어 정리  (1) 2023.05.06
리엑트(React) 설명  (2) 2023.05.02
카페24(Cafe24) react, nodejs 빌드, 배포, 호스팅 하기  (10) 2023.05.01
'IT Dictionary/Computer Science' 카테고리의 다른 글
  • 범용 레지스터(EAX, EBX, ECX, EDX, ESI, EDI, EBP, ESP)
  • git error: remote unpack failed: unable to create temporary object directory 오류
  • 리눅스(Linux) 터미널 필수 명령어 정리
  • 리엑트(React) 설명
MutJangE
MutJangE
즐거운 인생
  • MutJangE
    MutJangE
    MutJangE
  • 전체
    오늘
    어제
    • 분류 전체보기 (86) N
      • IT Dictionary (1) N
        • Database (7)
        • Network (9)
        • Computer Science (12) N
        • 정보보안산업기사 (24)
        • CTF & 보안 (3)
      • 일상 (11) N
        • 배포중인 웹 서비스 (1)
        • CERT병 (6)
        • 토익 (3) N
      • 프로그래밍 (19)
        • Java (1)
        • C# (6)
        • Unity (7)
        • React (4)
        • React native (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.5
    MutJangE
    레지스터 설명
    상단으로

    티스토리툴바