首页
社区
课程
招聘
求助汇编指令与机器指令的转换问题
发表于: 2013-5-5 16:38 5028

求助汇编指令与机器指令的转换问题

2013-5-5 16:38
5028
在王爽的书中看到这样一段话:

把BX中的数据传送到AX中,用汇编这样写: mov ax,bx,对应的机器指令为1000100111011000.

请问   mov ax,bx  与 1000100111011000  之间是怎么互相转换的呢?

我知道编译器可以转,但是具体的转换规则是什么呢?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 239
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
汇编指令有对应的16进制机器码,然后转二进制
比如mov ax, bx, 16进制机器码是89D8,然后转二进制就是了
http://www.luocong.com/learningopcode/index.htm
http://www.mouseos.com/x64/index.html
2013-5-5 17:08
0
雪    币: 496
活跃值: (286)
能力值: ( LV13,RANK:400 )
在线值:
发帖
回帖
粉丝
3
去谷歌  opcode对照表
2013-5-5 17:22
0
雪    币: 110
活跃值: (34)
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
4
首先提一点处理机器指令的时候时候以16进制字节为单位,按二进制的看会纠结死的。
关于这个问题最官方最权威的是《IA32手册第二卷》,讲解指令编码,Intel官网上有最新的……
看雪上已经有这一卷的中文版本了,个人感觉除了最后一个附录外翻译质量都极高:
http://bbs.pediy.com/showthread.php?t=84369&highlight=Intel
其中正文讲的是编码,附录A是操作码表,看着两个足矣解决LZ的问题,最后到OD里实践一下即可~
2013-5-6 02:10
0
雪    币: 65
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
其实,汇编语言就是机器语言的一中简写方式。把很长很无聊的01代码转换成容易记忆的、简洁的助记符号(汇编代码),所以有时候又把汇编代码叫做助记符。至于转换规则就像二楼说的一样,每一条汇编指令都有相对应的16进制代码,根据这个16进制代码再转换成二进制代码就行了。
2013-5-7 22:34
0
雪    币: 14
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
现在了解了!
多谢楼上几位的回答!!
2013-5-7 22:47
0
游客
登录 | 注册 方可回帖
返回
//