;在数据段中安排了部分七段LED显示码表,要求从键盘上任给一个 ;0-F中的数,在屏幕上显示对应的码值. ; ;输入字符 屏幕显示 ; 0 3FH ; 1 06H ; 2 5BH ; 3 4FH ; 4 66H ; 5 6DH ; 6 7DH ; 7 07H ; 8 7FH ; 9 6FH ; A 77H ; B 7CH ; C 39H ; D 5EH ; E 79H ; F 71H data segment org 1000h h1 db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h data ends stack segment para stack 'stack' db 100 dup(?) stack ends code segment assume cs:code,ds:data,ss:stack start:mov ax,data mov ds,ax mov ax,stack mov ss,ax lea bx,h1 mov ah,1 int 21h cmp al,3ah jc t1 ;al小于3ah转移 sub al,37h jmp t2 t1: sub al,30h t2: xlat h1 push ax ; mov dl,20h ; mov ah,2 ; 打印一个空格 int 21h ; pop ax ; mov ah,al mov cl,4 shr al,cl add al,30h call z1 mov al,ah and al,0fh cmp al,10 jnc t3 ;大于等于10转移 add al,30h jmp t4 t3: add al,37h t4: call z1 mov dl,'H' mov ah,2 int 21h mov ah,4ch int 21h z1 proc push ax push bx push cx push dx mov dl,al mov ah,2 int 21h pop dx pop cx pop bx pop ax ret z1 endp code ends end start