简单的问题,可我不知道哪出了问题!

lin115406828 2009-02-18 10:16:52
下面的程序就是让BL中的值以16进制显示出来,可调试的结果不正确,请大虾帮帮忙! 谢谢先!
C_SEG SEGMENT
ASSUME CS:C_SEG
START: MOV AL,16
MOV BL,AL
MOV CL,4
SHR BL,CL
AND BL,0FH
CMP BL,09H
JLE L1
ADD BL,07H
L1: ADD BL,30H
MOV DL,BL
MOV AH,02H
INT 21H
MOV AH,0
AND AL,0FH
CMP AL,09H
JLE L2
ADD AL,07H
L2: ADD AL,30H
MOV DL,AL
MOV AH,02H
INT 21H
MOV DL,'H'
INT 21H
MOV AH,4CH
INT 21H
C_SEG ENDS
END START
...全文
53 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
willflyz 2009-02-19
  • 打赏
  • 举报
回复
Debug后BL的结果为31H
lin115406828 2009-02-19
  • 打赏
  • 举报
回复
问题解决了,好像是中断对AL是有影响的!

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧