8086指令系统采用了一种灵活的, 由1-6个字节组成的变字长的指令格式, 包括操作码, 寻址方式以及操作数三个部分
1.指令格式
通常指令的第一字节为操作码字节(OPCODE), 规定指令的操作类型. 第二字节为寻址方式字节(MOD), 规定操作数的寻址方式; 接着以后的3-6字节依据指令的不同而取舍
第一字节为操作码, 它指出指令所要进行的操作. 其中
- W指示操作数类型 : W=0为字节, W=1为字;
- D指示REG操作数的传送方向: D=0表示REG操作数为源操作数, D=1表示REG操作数为目的操作数
第二字节为寻址方式, 它指出所用的两个操作数存放的位置.其中 :
-
REG字段规定一个寄存器操作数, 它作为源操作数还是目的操作数已由第一个字节中的D位规定.
-
MOD字段用来区分另一个操作数在寄存器中(寄存器寻址)还是在存储器中(存储器寻址), 在存储器寻址的情况下, 还用来指出该字节后面有无偏移量, 有多少偏移量
-
R/M字段受MOD字段控制; 若MOD=11为寄存器方式, R/M字段将指出第二操作数所在寄存器编号; MOD=00,01,10为存储器方式R/M则指出如何计算计算机存储器中操作数的偏移地址.
2.8086指令的寻址方式
1> 操作数的种类
指令中操作的对象称为操作数. 8086指令中操作数的种类分为数据操作数和地址操作数两种
(1)数据操作数
数