欢迎来到天天文库
浏览记录
ID:17883343
大小:38.00 KB
页数:5页
时间:2018-09-08
《汇编指令与机器码的相互转换》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、汇编指令与机器码的相互转换作者:佚名 阅读人次:2880 文章来源:未知 发布时间:2006-1-31 网友评论(3)条 机器语言我们只要重点理解一下几个概念:1.机器语言指令有操作码(OP)和地址码两部分组成
2、_____________OP_______________
3、__d__
4、__w__
5、
6、_____________OP_______________
7、__s__
8、__w__
9、<--此格式用于立即寻址方式在多数操作码中,常使用某些位来指示某些信息:如图上结构里的:w=1时对字来操作w=0时对字节来操作d值在双操作数指令中才有效当d=1时有且只有一个寄存器用于目
10、的操作数d=0时有且只有一个寄存器用于源操作数s=1时立即数为8位,但要求扩展成16位数s=0时当指令作字节操作/有16位立即数由于汇编的指令格式很多,这里我只作一些基本情况介绍,必要时读者可以下载/查阅80x86汇编小站http://www.x86asm.com提供的OPCODES手册来查阅。2.寻址方式的机器语言表示:
11、mod
12、reg
13、r/m
14、
15、_____
16、_____
17、_____
18、_____
19、_____
20、_____
21、_____
22、reg表示寄存器方式,在不包括立即数的双操作数指令的情况下,规定必须有一个操作数在寄存器中,该寄存器由reg字段指定,并与操作码字节中的w位相组合确定的寄存器m
23、od字段与r/m(register/memory)字段结合在一起确定另一个操作数的寻址方式现在你们下载了80x86汇编小站(http://www.x86asm.com)提供的OPCODES手册了吗?下载好了,请解压后打开里面的:opcodes.html文件,然后熟悉里面的表格:现在熟悉简单的:______________________________________________________________________________表1rrr:W=0:W=1:reg32000:AL:AX:EAX001:CL:CX:ECX010:DL:DX:EDX011:BL
24、:BX:EBX100:AH:SP:ESP101:CH:BP:EBP110:DH:SI:ESI111:BH:DI:EDI______________________________________________________________________________表2rrr:IndexRegister000:EAX001:ECX010:EDX011:EBX100:NoIndex101:EBP110:ESI111:EDI_________________________________________________________________________
25、_____表3mmm:Function11w=1000:DS:[BX+SI]001:DS:[BX+DI]010:SS:[BP+SI]011:SS:[BP+DI]BX100:DS:[SI]101:DS:[DI]110:SS:[BP]111:DS:[BX]______________________________________________________________________________表4oo:Function00:Ifmmm=110,thenadisplacementfollowstheoperation;otherwise,nod
26、isplacementisused01:An8-bitsigneddisplacementfollowstheopcode10:A16-bitsigneddisplacementfollowstheopcode11:mmmspecifiesaregister,insteadofanaddressingmode______________________________________________________________________________上面的表,你都看明白了吗?现在我就教你们如何利用这样的表格来把汇编指令翻译机器码3.指令格式简介8086所用的16位指令格式:__
27、___________________________________
28、操作码
29、+
30、mod-reg-r/m
31、+
32、位移量
33、+
34、立即数
35、1~2字节0~1字节0~2字节0~2字节OK!以上就是基本知识,下面我们来实践吧:———————————————————————————————————————问题:MOVAX,1234H对应的机器码为:B83412MOVEBX,0对应的机器码为:66BB00000000MOVCL,55H对
此文档下载收益归作者所有