관리 메뉴

100세까지 코딩

[컴퓨터 구조] 레지스터 본문

CS/컴퓨터 구조

[컴퓨터 구조] 레지스터

100세까지 코딩 2024. 2. 19. 17:41
혼공컴운 강의를 참고했습니다.

1. 레지스터

   - CPU 내부의 작은 임시저장 장치

  • 프로그램 카운터 : 메모리에서 가져올 명령어의 주소 (메모리에서 읽어 들일 명령어의 주소)
  • 명령어 레지스터 : 해석할 명령어 (방금 메모리에서 읽어 들인 명령어)
  • 메모리 주소 레지스터 : 메모리의 주소를 저장 
  • 메모리 버퍼 레지스터 : 메모리와 주고받을 값 (데이터와 명령어)

2. 실행 순서

1. 프로그램 카운터  (1000번지)
               ↓
2. 메모리 주소 레지스터 (1000번지)
               ↓


3. 메모리 버퍼 레지스터 (data : 1101)
               ↓
4. 프로그램 카운터 1증가(1001번지)
               ↓
5. 명령어 레지스터 (data: 1101)

3. 레지스터2

  • 플래그 레지스터 : 연산 결과 또는 CPU 상태에 대한 부가적인 정보
  • 범용 레지스터 :  다양하고 일반적인 상황에서 자유롭게 사
  • 스택 포인터 : 스택의 꼭대기를 가리키는 레지스터 (스택 주소 지정 방식에서 사용)
  • 베이스 레지스터 : 주소 지정에 사용

4. 특정 레지스터를 이용한 주소 지정 방식

1. 메모리에 주소를 명시한 방식

   ◆  스택 주소 지정 방식

       - 스택과 스택 포인터를 이용한 주소 지정 방식

 

 

   ◆  변위 주소 지정 방식

      - 오퍼랜드 필드의 값(변)과 특정 레지스터의 값을 더하여 유효 주소 얻는 방식

         상대 주소 지정 방식 : 오퍼랜드 필드의 값 + 프로그램 카운터

         베이스 레지스터 주소 지정 방식 : 오퍼랜드 필드의 값 + 베이스 레지스터