汇编程序:红红绿绿的字符

任务:编程序,在屏幕的中间分别显示绿色、绿底红色、白底蓝色的字符串 ‘YantaiUniversity’

提示:要计算出“屏幕的中间”对应的内存单元,然后将字符以及对应的属性字节写入到内存中。

 

参考解答:

assume cs:codeseg, ds:datasg
datasg segment
db 'welcome to masm!'
datasg ends

codeseg segment
start:
mov ax, datasg
mov ds, ax
mov ax, 0B800H
mov es, ax

mov si, 0
mov di, 820H+80-16 ;820H+(0+160)/2-16,屏幕第13行中间

mov cx, 16
w: mov al, [si]
mov es:[di], al
inc di
mov al, 02H ;属性字节,由此控制显示效果
mov es:[di], al
inc si
inc di
loop w
mov ax, 4c00h
int 21h

beg_copy:
mov ax, 0
add ax, ax
wait
end_copy: nop

codeseg ends
end start

运行结果: 

永不止步步 发表于04-20 09:32 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67410个|学分:308467个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号