1. 유효 주소(Effective Address)
- 주어진 명령어가 액세스할 위치를 나타내는 주소(메모리 주소 혹은 레지스터)
- 연산에 사용할 데이터가 저장된 위치, 즉 유효주소를 찾는 방법을 명령어 주소 지정 방식(Addressing Mode)이라고 할 수 있다. 명령어 주소 지정 방식은 유효 주소를 계산하거나 결정하는 방법을 정의한다.
- 명령어 주소 지정 방식은 여러가지 유형이 있으며, CPU에 따라 다르게 정의된다.
2. 대표적인 명령어 지정 방식의 종류
즉시 주소 지정 방식(Immediate Addressing Mode)
- 연산에 사용할 데이터를 오퍼랜드 필드에 직접 명시
- 상수 값을 사용할 때 주로 쓰이며, 데이터가 변경될 필요가 없는 경우 이상적
- 메모리나 레지스터에 접근하지 않기 때문에 속도가 빠른 것이 장점이지만, 오퍼랜드 크기에 따라 연산에 사용할 데이터의 크기가 제한된다.
직접 주소 지정 방식(Direct Addressing Mode)
- 오퍼랜드 필드에 유효 주소를 직접적으로 명시하는 방식으로, 분기 명령과 같이 특정 위치로 점프할 때 주로 사용된다.
- 유효 주소를 표현할 수 있는 크기가 연산 코드만큼 줄어든다.
- 명령어 구조가 간단하지만 메모리에 접근해서 데이터를 가져오기 때문에 다소 시간이 걸릴 수 있다.
간접 주소 지정 방식(Indirect Addressing Mode)
- 오퍼랜드 필드에 유효 주소의 주소를 명시하는 방식, 주소의 주소를 저장한다.
- 메모리에 두 번 접근해야 하기 때문에 속도가 느리지만 긴 유효 주소도 사용할 수 있다.
레지스터 주소 지정 방식(Register Addressing Mode)
- 연산에 사용할 데이터가 저장된 레지스터를 명시하는 방식
- 메모리에 접근하는 속도보다 레지스터에 접근하는 것이 빠르기 때문에 메모리에 접근해야 하는 직접 주소 지정 방식보다 빠르다.
- 짧고 빈번히 사용하는 데이터를 처리할 때 주로 사용된다.
- 물리적인 레지스터 수가 제한되어 있기 때문에 복잡한 데이터를 이용하여 연산을 처리할 때는 적합하지 않다.
레지스터 간접 주소 지정 방식(Register Indirect Addressing Mode)
- 연산에 사용할 데이터를 메모리에 저장하고 그 주소를 저장한 레지스터를 오퍼랜드 필드에 명시하는 방식
- 간접 주소 지정 방식과 레지스터 주소 방식을 혼합하여 만든 방식
본 내용은 아래 강의를 수강하고 작성한 포스팅입니다.
'CS > 컴퓨터 구조' 카테고리의 다른 글
[컴퓨터 구조] 메모리의 종류 (0) | 2024.11.17 |
---|---|
[컴퓨터 구조] 시스템 버스(FSB) (0) | 2024.11.16 |
[컴퓨터 구조] CPU의 동작 (0) | 2024.11.13 |
[컴퓨터 구조] 명령어의 구조 (0) | 2024.11.11 |
[컴퓨터 구조] CPU의 기본 구성 (0) | 2024.11.10 |