怎么判断是否输入回车符啊

george_2006 2007-05-16 10:22:45
输入一组值,当遇到回车符时,结束输入
我怎么判断是否遇到的回车符啊??
谢谢高手了啊
...全文
418 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
JeanChenYu 2007-05-17
  • 打赏
  • 举报
回复
非常抱歉,首先你问的多媒体键是什么啊?
可以这么说,对于单个的键来说应该都有
相应的扫描码,但复合键如CTRL+SHIFT怎么读,
我建议你网上搜搜,看看到底是怎么回事.
我帮不了你.
andylei_ok 2007-05-17
  • 打赏
  • 举报
回复
多媒体键能用IN AL,60H读取吗?
andylei_ok 2007-05-17
  • 打赏
  • 举报
回复
楼上的高明!
JeanChenYu 2007-05-17
  • 打赏
  • 举报
回复
当然,就这个问题来讲PALLBUM的回答应该更好,
但IN AL,60H我觉得你也应当掌握,在很多地方,
甚至更多的地方,IN AL,60H可能比INT用得多,
为什么这样说呢?必定INT 是有局限的,比如实
模式下可以,保护模式下就不行,而且,其实INT
也是先IN AL,60H,然后将所得到的扫描码转换
成相应的ASCII码,你要是不知道这个原理的话,
那我的回答应该对你有帮助,从这点来讲,PALLBUM
的回答只不过解你一时之难,而我的回答则解决了
更多可能你现在不知道但确实存在的而且必须解决
的问题,可以说看懂我的回答,并灵活掌握,你以后
一般就不会遇到此类小问题了.
JeanChenYu 2007-05-17
  • 打赏
  • 举报
回复
那个,分别给我了,停无聊的.
JeanChenYu 2007-05-17
  • 打赏
  • 举报
回复
抱歉,说错了,我很少用INT读键盘.
感觉纳闷,既然ASCII能分辨出回车,你还问什么.
paullbm 2007-05-16
  • 打赏
  • 举报
回复
比如:
mov dl,'A'
cmp dl,13 ;or cmp dl,0dh
jz ..
.
.
.
就这样了。
JeanChenYu 2007-05-16
  • 打赏
  • 举报
回复
很简单的,首先如果你是调用INT中断程序读键盘数据的话,
那么,你读入的数据必然只能是ASCII码,但是,ENTER键没
有对应的ASCII码,这时候,你可以采用直接从键盘端口读取数据
的方法,MOV DX,60H,IN AL,DX,这时候,读入AL的值是键盘的扫描码,
也许你还不知道什么是扫描码,不管怎样,键盘上的所有键都有对应
的扫描吗,如果你的键盘使用XT编码,那么ENTER 键的扫描码是1CH,
如果是使用AT编码,那么ENTER对应5AH,没有必要了解AT,与XT,你可以
两者都试试.按ENTER,读入数据,看看是1CH,还是5AH.

对于你的程序,可以这么来做:

Again:
reading data using int 16h or int 21h

mov dx,60h;read scan code from keyboard data port.
in al,dx
cmp al,1ch;if it is code of ENTER,jmp out of loop.
jz Quit
jmp Again

21,458

社区成员

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

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