回 帖 发 新 帖 刷新版面

主题:我要怎么才能看见'welcome to masm!'

大虾们给点意见

data segment
a  db 'welcome to masm!',0
data ends
code segment
assume cs:code,ds:data
start:
mov dh,8
mov dl,15
mov cl,2
mov ax,data
mov ds,ax
mov si,offset a
call show
mov ax,4c00h
int  21h
show:
mov ax,0b800h
mov es,ax
mov al,160
mov bl ,dh
mul bl
mov bx,ax
mov al,2
mov bl,dl
mul bl
mov di,ax
mov  ds: [20],cl
push cx
change:
mov cl,[si]
mov ch,0
jcxz ok
mov al,[si]
mov es:[bx+di+1],al
mov al,ds:[20]
mov es:[bx+di+2],al
inc si
add  di,2
jmp short change
ok:
pop cx
ret
code ends
end start

回复列表 (共3个回复)

沙发


程序错了。字符串输出很简单的。

data segment
     msg db ''welcome to masm!$'
data ends
code segment
     assume cs:code,ds:data
start:mov ax,data
      mov ds,ax
      lea dx,msg
      mov ah,09h
      int 21h
      mov ah,4ch
      int 21h
code  ends
      end start

板凳


lea dx,msg 这条指令的源操作数是用的什么寻址方式??

3 楼


存储器直接寻址

我来回复

您尚未登录,请登录后再回复。点此登录或注册