判断从键盘输入的字符,如果是数字字符则在屏幕终端显示字符串' number’, 如果是字母字符则显示'char', 否则显示'other' 。为什么运行时总是

未来的秃头女孩 2019-06-06 08:45:52
data segment string1 db 'Please input a number:',0dh,0ah,'$' string2 db 0dh,0ah,'number!',0dh,0ah,'$' string3 db 0dh,0ah,'char',0dh,0ah,'$' string4 db 0dh,0ah,'other',0dh,0ah,'$' data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax S: lea dx,string1 ;将string1的偏移地址放到dx中,使dx指向string1 mov ah,09h;在光标位置显示字符串,DS:DX=串地址,用’$’结束字符串 int 21h mov ah,01h;置光标位置,键盘输入并回显, AL=输入字符 int 21h cmp al,30h jnc number2 ;大于或等于时转移 jmp outputother number2: cmp al,3ah jnc notnum lea dx,string2 mov ah,09h int 21h jmp S notnum: cmp al,41h;判断是否为大写字符 jnc char jmp outputother char: cmp al,5bh;与大写字符“Z”的下一个比较 jnc smallchar ;转到判断小写字符处 lea dx,string3 mov ah,09h int 21h jmp S smallchar: cmp al,62h;与小写字符'a'的下一个比较 jnc smallchar2;高于则转移 jmp outputother smallchar2: cmp al,7bh jnc outputother lea dx,string3 mov ah,09h int 21h jmp S outputother: lea dx,string4 mov ah,09h; 显示字符串,DS:DX=串地址’$’结束字符串 int 21h jmp EXIT EXIT: mov ah,4ch int 21h code ends end start
...全文
263 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

21,458

社区成员

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

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