책에 따르면, 레지스터는 작은 저장 공간 (16 비트 CPU의 경우 16 비트)이있는 CPU의 장소입니다. 그러면 CPU 레지스터에 주소가 어떻게 있습니까? 그리고 메모리에 있지 않지만 CPU에서 어떻게 변위를 추가 할 수 있습니까?등록자는 어떻게 주소를 가질 수 있습니까?
예를 들면 다음과 같습니다
mov ax, [bx+1000h]
책에 따르면, 레지스터는 작은 저장 공간 (16 비트 CPU의 경우 16 비트)이있는 CPU의 장소입니다. 그러면 CPU 레지스터에 주소가 어떻게 있습니까? 그리고 메모리에 있지 않지만 CPU에서 어떻게 변위를 추가 할 수 있습니까?등록자는 어떻게 주소를 가질 수 있습니까?
예를 들면 다음과 같습니다
mov ax, [bx+1000h]
86 레지스터는 오직 이름으로 해결됩니다. bx+1000h
이라는 표현은 "레지스터 bx의 값에 1000h를 더한 값"을 의미하며 결과는 일부 레지스터 공간이 아닌 [...]
표기법을 통해 메모리에 주소로 해석됩니다.
식의 전반적인 해석은 "주소로드 후 xxx 비트가 1000h 바이트에 위치하도록로드"입니다.
내용이 이 bx
인 것으로 해석하고 오프셋으로 대체합니다.
bx
경우
ax
의 내용을 메모리 위치
2000h
당신은 BX 내부에 포함 된 메모리 주소에 변위를 추가로 저장됩니다
1000h
, 당신은 레지스터 BX에서 1000H 바이트를 이동하지 않습니다. – Cipi일반적으로 레지스터에는 메모리 주소가 없지만 일부는 예를 들어 AVR 마이크로 컨트롤러의 스택 포인터 SP입니다. – starblue