问题 单项选择题

下面的子程序是将AL寄存器低4位中的十六进制数转换为ASCII码,试问:该子程序中的横线处应填写什么指令
HTOASC PROC
AND AL, OFH
ADD AL, 30H
CMP AL, 39H
JBE DONE
____________
DONE: RET
HTOASC ENDP

A.SUB AL,’A’-0AH

B.ADD AL,’A’-0AH

C.SUB AL,’A’-07H

D.ADD AL,’A’-07H

答案

参考答案:D

解析: 当AL寄存器低4位对应的十六进制数小于AH时,程序中的JBE判断为真,直接输出结果;如果大于9H时,需要加上(’A’ -07H)才能转化成对应的ASCII码。

问答题
单项选择题