3. 示例 DEC AX
DEC CL
DEC WORD PTR[DI]
DEC ALFA[DI+BX]
302 NEG
NEGNEG
NEG 取补指令 NEG(NEGate)
格式: NEG OPRD
功能: 对操作数OPRD进行取补操作,然后将结果送
回OPRD.取补操作也叫作求补操作,就是求一个数的
相反数的补码.
说明:
1. OPRD为任意通用寄存器或存
储器操作数.
2. 示例: (AL)=44H,取补后,
(AL)=0BCH(-44H).
3. 本指令影响标志位CF、OF、
SF、PF、ZF及AF.
303 CMP
CMPCMP
CMP 比效指令 CMP(CoMPare)
格式: CMP OPRD1,OPRD2
功能: 对两数进行相减,进行比较.
说明:
1. OPRD1为任意通用寄存器或存
储器操作数.
OPRD2为任意通用寄存器或存储
器操作数,立即数也可用作源操
作数OPRD2.
2. 对标志位的影响同SUB指令,
完成的操作与SUB指令类似,唯一
的区别是不将OPRD1-OPRD2的结
果送回OPRD1,而只是比较.
3. 在8088/8086指令系统中,专
门提供了一组根据带符号数比较
大小后,实现条件转移的指令.
304 AAS
AASAAS
AAS 未组合十进制减法调整指令 AAS(ASCII Adjust
for Subtraction)
格式: AAS
功能: 对两个未组合十进制数相减后存于AL中的结
果进行调整,调整后产生一个未组合的十进制数数
且仍存于AL中.
说明:
1. 本指令影响标志位CF及AF.
2. 调整操作
若(AL) and 0FH > 9 或 AF=1
则(AL)<--(AL)-6,(AH)<--(AH)-
1,CF<--AF,(AL)<--(AL) and 0
FH,
否则(AL)<--(AL) and 0FH
305 DAS
DASDAS
DAS 组合十进制减法调整指令 DAS(Decimal Adjust
for Subtraction)
格式: DAS
功能: 对两个组合十进制数相减后存于AL中的结果
进行调整,调整后产生一个组合的十进制数且仍存
于AL中.
说明:
调整操作
若(AL) and 0FH > 9 或 AF=1,
则(AL)<--(AL)-6,AF=1
若(AL) and 0F0H > 90H 或 CF=
1,则(AL)<--(AL)-60,CF=1
306 MUL
MULMUL
MUL 无符号数乘法指令 MUL(MULtiply)
格式: MUL OPRD
功能: 乘法操作.
说明:
1. OPRD为通用寄存器或存储器
操作数.
2. OPRD为源操作数,即作乘数.
目的操作数是隐含的,即被乘数
总是指定为累加器AX或AL的内
容.
3. 16位乘法时,AX中为被乘数.8
位乘法时,AL为被乘数.当16位乘
法时,32位的乘积存于DX及AX中;
星尘-易尘
页码,5/22