ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 컴퓨터 구조: 어드레싱 모드란?
    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):

        명령어 자체가 연산에 사용될 데이터를 직접 포함하고 있습니다. 이는 상수 값을 연산에 사용할 때 적합합니다.

     

Designed by Tistory.