当前位置: 代码迷 >> 汇编语言 >> 键盘输入八位十六进制数,结果保存到内存单元中,程序不知错在哪
  详细解决方案

键盘输入八位十六进制数,结果保存到内存单元中,程序不知错在哪

热度:8764   发布时间:2013-02-26 00:00:00.0
键盘输入8位十六进制数,结果保存到内存单元中,程序不知错在哪?
data segment
save dw 8 dup(0)
data ends
code segment
assume cs:code,ds:code
start:mov cl,4
      mov ax,data
      mov ds,ax
next:mov ah,1
     int 21h
     cmp al,0dh
     jz exit
     cmp dl,39h
     jbe num
     cmp al ,'F'
     Jbe big_char
     sub al,57h
     jmp save
num:sub al,30h
     jmp save
big_char:sub al,37h
save:shl save,cl
     add save,al
     jmp next
exit:move ah,4ch
  int 21h


------解决方案--------------------------------------------------------
看错了  数据域够长   cmp dl,39h 处理数字这一句写错寄存器了吧 改AL 其他应该没错。。。我现在验证不了 我只是提个建议
  相关解决方案