-
컴퓨터 구조: 어드레싱 모드란?os 운영체제 2024. 3. 25. 18:50
어드레싱 모드:
https://skagh.tistory.com/8 참고
즉시 어드레싱(Direct Addressing): 명령어가 operand(피연산자)를 포함.
ex) ADD 5
빠르지만 수에 제한이 있음
직접 어드레싱(Indirect Addressing): 명령어에 메모리주소(->데이터)를 포함.
ex) ADD a
주소 공간을 쉽게 바꿀 수 있지만 주소 공간이 제한됨
간접 어드레싱(Indirect Addressing): 주소->메모리주소->데이터
ex. ADD (A)
주소 공간이 커지지만 실행에 2번의 메모리 접근 = 느림.
레지스터 어드레싱(Register Addressing): 명령어에 레지스터주소(->데이터).장점 : 명령어의 주소필드가 작아도 됨. 메모리 접근이 없다. 매우 빠르다
단점 : 레지수터 개수에 제한이있음.
레지스터 간접 어드레싱(Register Indirect Addressing): 레지스터주소->데이터(메모리주소)
장점 : 넓은 주소 공간, 한번의 메모리 접근이 있다.
변위(이산) 어드레싱(Displacement Addressing): 주소에는 기준&변위 값이 주어짐, 총 3가지 방식이 있음.
1. 상대 어드레싱(relative addressing):
레지스터가 PC를 가진다. 다음 명령어 주소가 주소 필드에 더해진다.
유효 주소는 명령어의 주소를 기준으로 한 상대적인 변위이다.
지역성 때문에 현재 실행되는 명령어와 인접한 명령들이 주로 실행하면 주소 비트를 절약할 수 있다.
2. 베이스-레지스터 어드레싱Base-Register Addressing):
레지스터는 메모리의 주소를 가지고 있고, 주소필드는 그 주소로부터의 변위 값을 가진다.
3. 인덱싱(Indexed Addressing):
레지스터는 변위 값을 가지고, 주소필드는 메모리 주소를 가지고 있다.
postindex : 간접주소지정을 한 후 인덱싱한다.
preindex : 인덱싱을 한 후 간접주소지정을 한다.
array와 같은 연속된 연산에 좋다.
즉시 어드레싱(Immediate Addressing):
명령어 자체가 연산에 사용될 데이터를 직접 포함하고 있습니다. 이는 상수 값을 연산에 사용할 때 적합합니다.
'os 운영체제' 카테고리의 다른 글
OS: 프로그램의 구조, 인터럽트, Syscall, 프로세스 실행 상태 (0) 2024.03.28 OS: 스풀, CISC, 데드락 (0) 2024.03.27 OS 5강: 프로세스 스케줄링 (0) 2024.03.01 OS 4강: 쓰레드 관리 (0) 2024.02.20 OS 3강: 프로세스 관리 (0) 2024.02.19