王爽 汇编语言 实验9求助
代码如下:assume cs:codesg,ds:datasg
datasg segment
db 'w','e','l','c','o','m','e','t','o','m','a','s','m','!'
db 02,24h,71h
datasg ends
codesg segment
start:mov ax,datasg
mov ds,ax
mov ax,0B800H
mov es,ax
mov bx,0
mov si,1500
mov di,0
mov cx,7
s0: mov al,
mov ah,
mov es:,ax
inc bx
add si,2
loop s0
inc si
mov cx,2
s1: mov al,
mov ah,
mov es:,ax
inc bx
add si,2
loop s1
inc si
mov cx,5
s2: mov al,
mov ah,
mov es:,ax
inc bx
add si,2
loop s2
mov ax,4c00h
int 21h
codesg ends
end start
为何运行结果是:
本帖最后由 hackershit 于 2014-5-18 14:26 编辑
你没计算好空格~~~
db 'welcome to masm!'
db 'w','e','l','c','o','m','e',' ','t','o',' ','m','a','s','m','!' 注意空格
重新改写代码
或者简单的可以把你代码中
inc si
改成
add si,2
就可以
因为在显存地址中,即使是黑乎乎的一个空格,也占一个字(高位放属性,低位放ASC)
页:
[1]