简体   繁体   中英

Is there is a way to get the address of a register?

Is there is a way to get the address of a register? For example, the address of the eax register (not it's content).

There has been architectures where low addresses were used to designate CPU registers, like the Univac 1100 series of computers.

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

Current x86 hardware doesn't work that way, so you cannot get the address of the EAX register - it just doesn't have one.

Registers are the internal processor storage. They do not have memory addresses, because they do not reside in memory . You identify them by their names: EAX, for example.

That said, memory-mapped registers do exist, but in any modern processor they belong to other devices, never the CPU. They are assigned "fake" memory addresses for convenience. See memory-mapped I/O .

Registers are physical electrical components inside the CPU's circuitry. They are not in RAM and so have no address. To access it's contents you use the mov instruction.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM