ITEEDU

2、ASCII码减调整指令AAS(Ascii Adjust After Subtraction)

该指令是用于调整AL之值,该值是二个ASCII码字节相减之差。具体的调整规则如下:

  • 若AL的低四位大于9,或标志位CF=1,则,AH=AH-1,AL=AL-6,并置AF和CF为1,否则,只置AF和CF为0;
  • 清除AL的高四位。

指令的格式:

AAS

受影响的标志位:AF和CF(OF、PF、SF和ZF等都是无定义)

图5.21 AAS指令执行过程示意图

3、ASCII码乘调整指令AAM(Ascii Adjust After Multiplication)

该指令是用于调整寄存器AL之值,该值是由二个单BCD码字节用无符号乘指令MUL所得的积。其调整规则如下:

AH←AL/10(商),AL←AL%10(余数)

指令的格式:

AAM

受影响的标志位:PF、SF和ZF(AF、CF和OF等都是无定义)

例如:

 MOV AL, 9
 MOV BL, 8
 MUL BL       ;AL=72D
 AAM         ;AH=7, AL=2