汇编课的一段简单的汇编程序,显示键盘按健的扫描码和ASCII码,自己添加了退出程序的功能。
;Stack Segment
stack segment para stack ‘stack’
dw 256 dup(0)
tos label word
stack ends
;Code Segment
code segment
assume cs:code,ss:stack,ds:data
;Proc main
main proc far
mov ax,stack
mov ss,ax
mov sp,offset tos
push ds
xor ax,ax
push ax
again:
mov ah,0
int 16h
mov bx,ax
cmp al,1bh
jz exit
call binihex
mov dl,20h
mov ah,2
int 21h
mov dl,bl
mov ah,2
int 21h
mov dl,dh
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h
jmp again
exit:
ret
main endp
;Proc binihex
binihex proc
mov ch,4
rotate:
mov cl,4
rol bx,cl
mov al,bl
and al,0fh
add al,30h
cmp al,3ah
jl print
add al,7
print:
mov dl,al
mov ah,2
int 21h
dec ch
jnz rotate
ret
binihex endp
code ends
end main
博主友情提示:
如您在评论中需要提及如QQ号、电子邮件地址或其他隐私敏感信息,欢迎使用>>博主专用加密工具v3<<处理后发布,原文只有博主可以看到。