2024年4月2日发(作者:)
汇编指令与机器码的相互转换
机器语言我们只要重点理解一下几个概念:
1. 机器语言指令有操作码(OP)和地址码两部分组成
|_____________OP_______________|__d__|__w__|
|_____________OP_______________|__s__|__w__| <--此格式用于立即寻址方式
在多数操作码中,常使用某些位来指示某些信息:
如图上结构里的: w=1 时 对字来操作
w=0 时 对字节来操作
d值在双操作数指令中才有效
当 d=1 时 有且只有一个寄存器用于目的操作数
d=0 时 有且只有一个寄存器用于源操作数
s=1 时 立即数为8位,但要求扩展成16位数
s=0 时 当指令作字节操作/有16位立即数
由于汇编的指令格式很多,这里我只作一些基本情况介绍,必要时读者可以下载/查阅
80x86汇编小站提供的OPCODES手册来查阅。
2. 寻址方式的机器语言表示:
| mod | reg | r/m |
|_____|_____|_____|_____|_____|_____|_____|
reg 表示寄存器方式,在不包括立即数的双操作数指令的情况下,规定必须有一个操
作数在寄存器中,该寄存器由reg字段指定,并与操作码字节中的w位相组合确定的寄存
器
mod字段与r/m(register/memory)字段结合在一起确定另一个操作数的寻址方式现
在你们下载了80x86汇编小站()提供的OPCODES 手册了吗?
下载好了,请解压后打开里面的: 文件,然后熟悉里面的表格:
现在熟悉简单的:
______________________________________________________________________________
表1


发布评论