关于寄存器地址和主存地址的区别?
来源:3-10 计算机指令执行的过程

烈焰卡卡
2019-12-23
以MOV R0, R1这种形式的指令为例,都是[OP][addr]这样的形式,应该也可以不光是R0这样指定寄存器,应该也可以指定主存吧?(比如MOV R0,主存地址)那CPU是如何区分编译后的二进制表示的是寄存器的地址还是主存的地址?
还有我记得之前也讲过[OP]后面还可以直接跟操作数,那地址和操作数又如何区分?
写回答
1回答
-
咚咚呛
2019-12-23
这个问题太细了,如果你感兴趣的话,我建议你可以了解一下汇编语言,在汇编语言上的指令就有操作寄存器和操作内存的指令。
这里以mov指令做个例子,实际的机器指令是类似这样子的:
mov [0x0619], eax
前面的是内存地址,后面的是寄存器地址,指令的意思是把寄存器eax的数据移动到内存的0x0619空间上面去。
更多的内容可以自行了解汇编语言做拓展。
00
相似问题