2011-03-14 1 views

답변

6

레지스터는 내부 프로세서 저장소입니다. 그들은 메모리 주소가 없습니다. 메모리 주소가이기 때문에 없습니다. 이름을 EAX로 식별합니다 (예 : EAX).

즉, 메모리 매핑 된 레지스터가 존재하지만 모든 현대 프로세서에서는 CPU가 아닌 다른 장치에 속합니다. 편의상 "fake"메모리 주소가 지정됩니다. memory-mapped I/O을 참조하십시오.

+0

RAM에 매핑되지 않았 음을 추가합니다. 많은 하드웨어 장치에는 매핑이 진행되고 있으므로 "주소"가있는 레지스터가 있습니다. 여기서 유일한 것은 x86이 이러한 레지스터를 노출 가능하게 만들어 노출하지 않는다는 것입니다. –

+0

좋은 지적! 그리고 더 많은 문자 – slezica

+0

@ MahmoudAl-Qudsi : 아키텍처의 64 비트 버전에서도 마찬가지입니까? – user2284570

4

레지스터는 CPU 회로 내부의 물리적 전기 부품입니다. RAM에 없기 때문에 주소가 없습니다. 내용에 액세스하려면 mov 명령어를 사용하십시오.

+0

ok 대답을 많이 주셔서 감사합니다. – jerome

+1

'레지스터는 CPU의 회로 안에있는 물리적 인 전기 구성 요소입니다. case의 경우 for도 마찬가지입니다. – user2284570

7

Univac 1100 시리즈 컴퓨터와 같이 CPU 레지스터를 지정하기 위해 낮은 주소가 사용 된 아키텍처가 있습니다. 당신은 EAX 레지스터의 주소를 얻을 수 있도록

http://en.wikipedia.org/wiki/UNIVAC_1100/2200_series

현재 x86 하드웨어는 그런 식으로 작동하지 않습니다 - 그것은 단지 하나를 가지고 있지 않습니다.

+0

일부 마이크로 컨트롤러에는 여전히 메모리 매핑 레지스터가 있습니다 (예 : AVR (32 비트 GP 레지스터가있는 8 비트 RISC) : http://www.avr-tutorials.com/general/avr-memory-map. –