汇编:从输入端口输入ASCII码,在屏幕上显示对应的字符

来源:百度知道 编辑:UC知道 时间:2024/05/09 21:55:22
请大家帮帮忙,急用!

从端口输入ascii码应该是考你in out等端口读写指令吧。

mov dx,端口号
in al,dx 读入端口数据
mov ah,2
mov dl,al
int 21h 显示字符

楼主不懂可以再补充一下问题

Dididu兄,我也经常学习你的程序,是该我向你致敬才对。

楼主说的“输入端口”是指键盘吗?若是键盘的话,很简单了嘛。

mov ah,1
int 21h ;从键盘接受一个字符
mov ah,2
mov dl,al
int 21h ;显示这个字符

Ok。

补充:若我的理解有误,请楼主示例说明,直到给你满意的回答。

早就想说的,向"匿名"的这位大哥致敬!

早就想说的,向"匿名"的这位大哥致敬!
"输入端口"是指键盘吗?若是键盘,那太难了!

code segment
assume cs:code
; KEYBOARD_READ
; 从键盘向al读取一个字节(端口60h)
; 调用: 无
; 返回: 如果ah=O,则al=读自键盘的字节
; 如果ah=1,超时后仍没有读入字节
; 用到的寄存器:al
keyboard_read proc near
push cx
push dx
xor cx,cx ;超时计数器(64K)
key_read_loop:
in al,64h ;键盘控制器状态
call DELAY
test al,1 ;数据字节准备好?
jnz key_read_ready ;如果准备好读,则跳转
loop key_read_loop
mov ah,1 ;返回状态—坏
jmp key_read_exit
key_read