| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 597 人关注过本帖
标题:大家帮助下我 看一下这段代码什么意思
只看楼主 加入收藏
caidian2005
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-9-4
收藏
 问题点数:0 回复次数:1 
大家帮助下我 看一下这段代码什么意思
data segment      
string db 'ASCII SCAN CHAR',0dh,0ah,'$'
ending db 'Press any key to continue',0dh,0ah,'$'
temp db ?
data ends
stack segment
db 512 dup(?)
stack ends

code segment

start:
;---------input a num(Tips)
mov ah,09h
mov dx,offset string
int 21h
;---------input a num(getcode)
getkey:

mov ah,00h
int 16h

mov dl,al
mov dh,ah
;---------Backup
push dx
push dx
push dx
push dx
push dx
;---------Al,ASCII
;------------high4bits
mov cl,04h
shr dl,cl
cmp dl,09h
ja outa1
add dl,30h
mov ah,02h
int 21h

jmp next1

outa1:
add dl,37h
mov ah,02h
int 21h

next1:
;------------low4bits
pop dx
and dl,0fh
cmp dl,09h
ja outa2
add dl,30h
mov ah,02h
int 21h
jmp next2

outa2:
add dl,37h
mov ah,02h
int 21h

next2:
;------------Out space
mov ah,02h
mov dl,20h
int 21h
;------------AH,Scan Code
;------------high4bits
pop dx
mov cl,04h
shr dh,cl
cmp dh,09h
ja outa1
add dh,30h
mov ah,02h
mov dl,dh
int 21h

jmp next3

outa3:
add dh,37h
mov ah,02h
mov dl,dh
int 21h
;------------low4bits
next3:
pop dx
and dh,0fh
cmp dh,09h
ja outa4
add dh,30h
mov ah,02h
mov dl,dh
int 21h

jmp next4

outa4:
add dh,37h
mov ah,02h
mov dl,dh
int 21h


next4:

;------------Out space
mov ah,02h
mov dl,20h
int 21h
;-----------Out char
pop dx
mov ah,02h
int 21h
;------------newline
mov ah,02h
mov dl,0dh
int 21h
  
mov ah,02h
mov dl,0ah
int 21h
;------------check ends
pop dx
cmp dl,03H
je happyed
jne getkey

happyed:
mov ah,02h
mov dl,0dh
int 21h
  
mov ah,02h
mov dl,0ah
int 21h

mov ah,09h
mov dx,offset ending
int 21h

code ends
搜索更多相关主题的帖子: continue input 
2011-09-04 12:05
xyh_1991
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2011-9-24
收藏
得分:0 
利用中断类型16H调用键盘I/O接口程序,并显示由键盘中断程序送回的扫描码和ASCII码。显示的格式如下:
SCAN  ASCII  CHAR
1E   61   a
30   62   b
2E   63   c
按CTRL+C可以中止程序。CTRL+C对应的ASCII码为03H。
将二进制数以十六进制的形式在屏幕上显示出来。

2011-09-24 00:42
快速回复:大家帮助下我 看一下这段代码什么意思
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018886 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved