演示文本方式下显示汉字的汇编源程序
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
;
; 演示文本方式下显示汉字的汇编源程序
;
; 文件名:myname.asm
;
; 作者: 黄志斌 2001年12月4日于广西河池
;
; 说明: 本程序通过调用BIOS 10h替换系统字模来显示汉字
; 入口: ax=1100h
; bh=字模的高度(有效值:0~20h,默认值:10h)
; bl=被替换的字模集代号(有效值:0~7)
; cx=要替换的字模数
; dx=被替换的第一个字模所对应的字符的ASCII
; es:bp=新字模起始地址
; int 10h
; 要恢复系统字符集,可作如下调用:
; ax=1104h
; bl=字模集代号(有效值:0~7)
; int 10h
;
; 使用方法:
; masm myname;;
; link myname;;
; exe2bin myname.exe myname.com
;
; 注意:本程序未按该字的机内码替换字模,因此不能运行在汉字操作系统下
;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
codeseg segment public 'code'
;==============================
org 100h
assume es:codeseg,ss:codeseg
assume cs:codeseg,ds:codeseg,es:codeseg
;-----------------------------
main proc near
mov ax,1100h
mov bh,10h
mov bl,0
mov cx,6
mov dx,200
lea bp,mode
int 10h
mov ah,09h
lea dx,myname
int 21h
mov ah,7
int 21h
mov ax,1104h
mov bl,0
int 10h
mov ax,4c00h
int 21h
;(or int 20h)
main endp
;---------------------
mode db 100B,100B,111111B,100B,100B,11111111B,1B,11111B,10001B,11111B,10001B,11111B,10000B,100B,11000B,1100000B
db 01000000B,01010000B,11111000B,01000000B,01000100B,11111110B,00010000B,11111000B,00010000B,11110000B,00010000B,11110000B,00000000B,01100000B,00011000B,00000100B
db 1B,1B,1B,11111111B,1B,1B,1B,111111B,0B,10B,10001B,1010000B,1010000B,10010000B,1111B,0B
db 00000000B,00000000B,00000100B,11111110B,00000000B,00000000B,00010000B,11111000B,0B,00000000B,10000000B,10000100B,00010010B,00010010B,11110000B,0B
db 0B,100000B,10001B,0B,11111100B,1011B,1001000B,101000B,101001B,10001B,101001B,100101B,1000101B,10000001B,11B,0B
db 10000B,00010000B,11110100B,10010B,00010000B,11111110B,00010000B,01010000B,01010000B,01110000B,01010000B,01001000B,01001000B,01101010B,10000110B,10B
myname db 200,201,202,203,204,205,'$'
;======================
codeseg ends
end main
问题点数:1、回复次数:4Top
1 楼awinder(风)回复于 2002-02-20 11:30:00 得分 0
:)Top
2 楼legsion(小风)回复于 2002-02-21 11:27:53 得分 1
这种方法有一点不足,就是必须一次性的把所有要显示的字写完,否则.....呵呵!
还有,不同的字必须用不同的字符的ASCII,算一算总共才有几套字符集......呵呵,个人之见!
Top
3 楼Purpleendurer(编程—>任是无情也动人^_^)回复于 2002-02-26 11:24:56 得分 0
请大家多提意见!Top
4 楼Purpleendurer(编程—>任是无情也动人^_^)回复于 2002-02-26 11:25:02 得分 0
请大家多提意见!Top




