프로그램을 다른 메모리 위치로 옮길 때 명령어의 변위는 유지하고, 적재 시작 주소가 저장된 별도의 레지스터 값만 바꾸어 유효주소를 계산하려 한다. 이때 사용하는 주소지정 방식은? (단, 기준 레지스터는 프로그램 카운터가 아니다.)
정답 4번
베이스레지스터 주소지정에서는 유효주소를 '베이스레지스터 값 + 명령어의 변위'로 계산한다. 적재 시작 주소가 1000이고 변위가 24이면 유효주소는 1024이다. 프로그램을 5000으로 옮긴 뒤 베이스레지스터만 5000으로 바꾸면 같은 변위 24로 5024를 참조한다. 상대주소지정도 위치 독립적인 코드에 활용할 수 있지만, 이 보기의 상대주소지정은 PC를 기준으로 변위를 더하는 방식이다. 문제는 PC가 아닌 별도 레지스터에 적재 시작 주소를 저장한다고 명시하므로 베이스레지스터 주소지정으로 구별된다. 직접주소지정은 주소를 명령어에 직접 지정하고, 간접주소지정은 지정한 위치에 저장된 주소를 다시 참조한다.
콘텐츠 정보
- 자료 유형
- 편집복원
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-10-02