x86的寄存器

来源:互联网 发布:网络架空地板的优势 编辑:程序博客网 时间:2024/06/05 02:42
最近一段时间,在看汇编语言方面的东西。
看的大部分都是基于8086。而8086的芯片中是16位的数据线,16位的寄存器。看了大部分指令后也是16位的。
所在在把程序移植到32位的处理器上的时候,就会发现有此不同。虽然处理器是32位的,但是它还是保留的AX,BX,CX,DX,BP寄存器还是16位。
其寻址方式也按字节寻址。

比如16位的地址0000只是对应了一个字节的内容 CD,而16位的地址0001也是对应了一个字节的内容 如20。

那么

mov ax,[0000]

时,我们就把20CD内容送到了,这个32位的寄存器中去了。所以一个字占两个字节。

而且8086规定在以低8位(低字节)所在单元的地址作为字或双字数据的地址,存放的顺序是:高字节数据放在高地址单元中,将低字节数据放在低地址单元中。

汇编图

原创粉丝点击