|
主题 : : 关于实验9 [已解决] |
回复[ 4次 ]
点击[ 1047次 ] | |
荣誉值:2
信誉值:0
注册日期:2010-07-04 09:31 |
assume cs:code,ds:data
data segment
char db 'welcome to masm!'
color db 02h,24h,71h
data ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov di,offset color
mov ax,0B86EH
mov es,ax
mov si,48H
mov cx,16
char1:mov al,ds:[bx]
mov es:[si],al
mov es:[si+0A0H],al
mov es:[si+140H],al
mov al,ds:[di]
inc si ;和下面一个的区别
mov es:[si],al ;下面一个此处为si+1
mov al,ds:[di+1]
mov es:[si+0A0H],al ;同样【si+0a1h】
mov al,ds:[di+2]
mov es:[si+140H],al ;【si+141h】
inc bx
add si,2
loop char1
mov ax,4c00h
int 21h
code ends
end start
可是编译后发现不行,然后用下面这种方法又可以
assume cs:code,ds:data
data segment
char db 'welcome to masm!'
color db 02h,24h,71h
data ends
code segment
start:mov ax,data
mov ds,ax
mov bx,0
mov di,offset color
mov ax,0B86EH
mov es,ax
mov si,48H
mov cx,16
char1:mov al,ds:[bx]
mov es:[si],al
mov es:[si+0A0H],al
mov es:[si+140H],al
mov al,ds:[di]
mov es:[si+1],al
mov al,ds:[di+1]
mov es:[si+0A1H],al
mov al,ds:[di+2]
mov es:[si+141H],al
inc bx
add si,2
loop char1
mov ax,4c00h
int 21h
code ends
end start
求解 | | |