灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:5116回复:0

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

楼主#
更多 发布于:2012-09-10 18:58

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

4、ASCII码除调整指令AAD(Ascii Adjust After Division)

该指令是在作除法前用于调整寄存器AH和AL之值,它是把二个寄存器中单BCD码组成一个十进制数值,为下面的除法作准备的。其调整规则如下:

AL←AH*10+AL,AH←0

指令的格式:AAD

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

例如:

MOV AX, 0502H

MOV BL, 10D

AAD         ;AH=0, AL=52D

DIV  BL       ;AH=2(余数), AL=5(商)

喜欢0 评分0
游客

返回顶部