双操作数指令 ADD AX,BX 大多数运算型指令都是双操作数指令,对这种 指令,有的机器(大中型)使用“三地址”指令: 除给出参加运算的两个操作数外,还要指出运算结 果的存放地址。 现代微型计算机中多采用二地址指令,两 个操作数分别称为“源操作数”和“的操 作数”,指令执行后,把运算结果放到目的操 作数的地址之中
6 双操作数指令ADD AX, BX 大多数运算型指令都是双操作数指令,对这种 指令,有的机器(大中型)使用“三地址”指令: 除给出参加运算的两个操作数外,还要指出运算结 果的存放地址。 现代微型计算机中多采用二地址指令,两 个操作数分别称为“源操作数”和“目的操 作数”,指令执行后,把运算结果放到目的操 作数的地址之中
7 8088/8086的操作数分为3类 1、立即数(常数) 取值范围如下表: 8位 16位 无符号数00H-FFH(0-255) 0000H- FFFFH(0-65535) 带符号数80H7HH(-128-127)8000H-7FFFH(-32768-32767) 立即数只能用作源操作数,如 MoⅤAX,0FA00H 正确 MOV 8000H, DX ;错误
7 二、8088/8086的操作数分为3类 1、立即数(常数) 取值范围如下表: 8位 16位 无符号数 00H-FFH(0-255) 0000H-FFFFH(0-65535) 带符号数 80H-7FH(-128~127) 8000H-7FFFH(-32768~32767) MOV AX,0FA00H ;正确 MOV 8000H,DX ;错误
8 2、岢存器操作数 放在8个通用寄存器或4个段寄存器中的操作数 16位 Ah 16位 BX Bh Bl 16位 CH CI 16位 DX DH DI
8 2、寄存器操作数 放在8个通用寄存器或4个段寄存器中的操作数 16 位 AX AH AL 16 位 BX BH BL 16 位 CX CH CL 16 位 DX DH DL
9 SI DI 只能存放字操作数 BP SP CS DS 段寄存器存放 ES 当前操作数的 段基地址 不允许将立即数传送到段寄存器
9 只能存放字操作数 段寄存器存放 当前操作数的 段基地址 不允许将立即数传送到段寄存器 SI DI BP SP CS DS ES SS
10 3、存储器操作数 类型存储单元个数 字节 存储器操作数{字 124 双字 般不允许两个操作数同时为存器操作数
10 3、存储器操作数 存储器操作数 字节 字 双字 1 2 4 类型 存储单元个数 一般不允许两个操作数同时为存储器操作数