|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 linha0 于 2011-7-2 21:31 编辑
- assume cs:code,ds:data
- data segment
- db 'welcome to masm!' ;共16个ASCII码字符,16个字节
- data ends
- rgb segment
- db 00100100b;3、绿底红字
- db 00000010b;0、黑底绿字
- db 01000010b;1、红底绿字
- db 01110001b;2、白底蓝字
- db 11000010b;4、红底闪烁绿字
- db 01001010b;5、红底高亮绿字
- db 00000111b;6、黑底白字
- db 32 dup (0) ;存放CX,用于多重循环
- rgb ends
- code segment
- start:
- mov ax,data
- mov ds,ax
- mov ax,rgb
- mov ss,ax
- mov sp,30h
- mov ax,0b800h ;显示缓冲区的段地址
- mov es,ax
- ;以上初始化各段
-
- mov bp,0
- mov di,6e0h ;6e0h为中间行:(25-3)/2*160,A0=160
- mov cx,3
-
- s: push cx
-
- mov ah,[bp] ;取色
-
- mov bx,0
- mov si,0
- mov cx,16
-
- s0: mov al,[si] ;取字
- mov es:40h[di][bx],ax ;显示字符.40h为中间列(160-3)/2
-
- inc si
- add bx,2
- loop s0
-
- inc bp
- add di,0a0h
- pop cx
- loop s
-
- mov ax,4c00h
- int 21h
- code ends
- end start
复制代码
|
|