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 bx,0
mov di,0
mov bp,0640h ;定义目标段偏移 因为得从11行开始写
mov cx,16
s:mov ah,02h ;绿字
mov al,ds:[bx] ;读第一个字
mov es:[bp+40h+di],ax ;写入到11行中间
mov ah,24h ;绿底红字
mov al,ds:[bx] ;读第一个字
mov es:[bp+0e0h+di],ax ;写入到12行中间
mov ah,71h ;白底蓝字
mov al,ds:[bx] ;读第一个字
mov es:[bp+180h+di],ax ;写入到13行中间
add bx,1
add di,2
loop s
mov ax,4c00h
int 21h
code ends
end start
自己写的,感觉不易管理,在问下老师们,能用栈实现么? |