|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- assume cs:code, ds:data, ds:color, ss:stack
- data segment
- db "welcome to masm" ; 15 个字节
- data ends
- color segment
- db 2H, 24H, 71H
- color ends
- stack segment
- dw 8 dup(0)
- stack ends
- code segment
- ; 源数据段
- main: mov ax, data
- mov ds, ax
-
- ; 初始化栈
- mov ax, stack
- mov ss, ax
- mov sp, 16
-
- ; 外圈循环写每一行
- mov cx, 3
- mov bx, 0 ; 显存段偏移地址
- mov di, 0 ; 颜色段偏移地址
- w1: push cx ; 存储外圈循环次数
-
- ; 颜色段
- mov ax, color
- mov es, ax
-
-
- mov dh, es:[di] ; 字符上色
- mov cx, 15
-
- ; 显存段
- mov ax, 0b800H
- mov es, ax
-
- mov si, 0 ;源数据段偏移地址
- push di ; 存储 颜色段偏移地址
- mov di, 0
- ; 向显存输入
- w2: mov dl, [si]
- mov es:[bx+640H][di+42H], dx
- inc si
- add di, 2
- loop w2
-
-
- pop di ; 恢复 颜色段偏移地址
- pop cx ; 恢复外圈循环次数
- add bx, 160
- inc di
- loop w1
- mov ax, 4c00H
- int 21H
- code ends
- end main
复制代码 |
|