汇编小试牛刀显示welcome to masm

时间:2021-01-25 03:31:12

在理解实验9时我首先在debug在直接对显示缓冲区B8000十六进制数进行直接修改。在dos中看到了效果,也就理解了原理。

后来就着手汇编了。

其实很简单

就是将自己定义好的data段中‘welcome to masm’和属性数据写入B800段偏移地址为0780中

assume cs:code,ds:data
data segment
db 'welcome to masm!'
data ends
code segment
start: mov ax,data
mov ds,ax 
mov ax,0b800h
mov es,ax 

mov cx,16
mov bx,0
mov ax,0780h
mov di,ax
mov ah,0


s: mov al,[bx] 
mov es:[di],ax
mov byte ptr es:[di+1],02h
inc bx
add di,2
loop s ;welcome..录入

mov ax,0780h
mov di,ax

mov byte ptr es:[di+17],24h
mov byte ptr es:[di+19],24h

mov byte ptr es:[di+23],71h
mov byte ptr es:[di+25],71h
mov byte ptr es:[di+27],71h
mov byte ptr es:[di+29],71h
mov byte ptr es:[di+31],0f1h


mov ax,4c00h
int 21h

code ends
end start汇编小试牛刀显示welcome to masm