毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 开发语言 >> 正文

关于汇编指令中mov 89和8B的问题

更新时间:2013-5-8:  来源:毕业论文

关于汇编指令中mov 89和8B的问题

X86汇编指令中
mov ebx,eax有几种格式
89C3和8BD8
看雪上的帖子给的解释是
88    /r     MOV r/m8,r8             Move
89    /r     MOV r/m32,r32           Move
8A    /r     MOV r8,r/m8             Move
8B    /r     MOV r32,r/m32           Move
搞不懂一个mov ebx,eax怎么有这么多格式

还有机器码的第二位应该是涉及寄存器的。
C3的2进制是:11000011
D8的2进制是:11011000
前2位是Mod,这个已经在Inter手册上看到过了
后6位我的理解是分为两段,每一段代表一个寄存器,eax是000;ebx是011
为什么8B的mov 后面的操作数里的寄存器是反的的?

指令编码有交集而已。毕业论文 

89 和 8B 就是 MOV 指令操作码域里 d 位的差异,d 位表明的就是操作方向,所以后面的寄存器编码上两个就要互换位置了。

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。