编程:在屏幕中间分别显示绿色、绿色红底、白色蓝底的字符串'welcome to masm!'
要想将字符显示在屏幕中间,应该将字符写入80*25的显示缓冲区的中间。25行,从0开始,算出中间为11,12,13行。偏移量为11*160=1760,12*160=1920,13*16=2080
16个字符,加上颜色属性,算出列偏移量为(160-16*2)/2 = 64
程序中要有两层循环:一层循环用于换行,第二层循环在每一行写入字符串以及颜色属性。
assume cs:code,ds:data,ss:stack
data segment
db "welcome to masm!"
db 02h,24h,71h <span style="font-family: Arial, Helvetica, sans-serif;">; 绿字02h,绿底红字24h,白底蓝字71h</span>
dw 1824,1984,2144 ;[19+di]
data ends
stack segment
dw 8 dup(0)
stack ends
code segment
start: mov ax,data
mov ds,ax
mov ax,0b800h
mov es,ax;80*25彩色字符显示缓冲区 目标地址

这篇博客介绍了如何用汇编语言编程,在屏幕的中间位置依次以绿色、绿色红底、白色蓝底显示字符串'welcome to masm!'。通过计算屏幕缓冲区的偏移量,并设置合适的行列位置及颜色属性,实现字符串的居中和多彩显示。程序包含两层循环,分别用于换行和在每行写入字符串及其颜色信息。
最低0.47元/天 解锁文章
707

被折叠的 条评论
为什么被折叠?



