CODE SEGMENT
ASSUME CS:CODE
START:
mov ah,2;显示单个字符
mov cx,15
mov bl,10H
loo1: ;第一层循环
mov bh,16
loop2: ;第二层循环
mov dl,bl;显示
int 21H
mov dl,20h;空格
int 21H
inc bl
dec bh
cmp bh,0
jne loop2
mov dl,0aH
int 21H
mov dl,0dh
int 21h
loop loo1
EXIT:MOV AH,4CH
INT 21H
CODE ENDS
END START
;调试通过
不可能显示全部了, 10H~20H之间有不少是不可显示的控制字符, 如何显示出来?
我来拿2分,我一写,后面又会有人写一个更好的,真是无聊。
16位汇编程序_显示ASCII码表和调色板
http://blog.csdn.net/dididu1515/archive/2009/03/22/4013537.aspx
源代码如下:
code segment
assume cs:code,ds:code,ss:code
start:
mov ax,3
int 10h;置文本显示模式
mov ax,0b800h
mov es,ax;置显存地址
cld
mov di,(80*2)*2;置起点
mov dx,3030h;置ASCII初值
mov bl,0;置二进制数初值
mov cx,16;十六行
Q0:push cx
mov cx,16;十六组
Q1:call asc
inc bl
cmp dl,46h
jnz Q4
mov dl,30h
inc dh
cmp dh,3ah
jnz Q5
add dh,7
Q5:jmp Q3
Q4:inc dl
cmp dl,3ah
jne Q3
add dl,7
Q3:
loop Q1
pop cx
loop Q0
mov ah,0;暂停
int 16h
mov ah,4ch
int 21h
asc:
mov al,dh;显示高位
mov ah,07;白色
stosw
mov al,dl;显示低位
stosw
mov ax,0720h;显示空格
stosw
mov al,bl
mov ah,0ch;红色
stosw
mov ax,0720h;显示空格
stosw
ret
code ends
end start