王爽汇编第10章,第一个打印题。自己是用工作以外的时间学汇编,有点慢。不过,贵在坚持。相信自己。不久要出差,希望项目顺利点。
assume cs:codesg
datasg segment
db 'Welcome to Masm!',0
datasg ends
stacksg segment
dw 32 dup(0)
stacksg ends
codesg segment
start:
mov dh, 8
mov dl, 3
mov cl, 3
mov ax, stacksg
mov ss, ax
mov sp, 32
mov ax,datasg
mov ds, ax
mov si, 0
call show_str
mov ax, 4c00h
int 21h
show_str:
push ax
push bx
push es
push di
push si
push cx
;push dx
; 计算偏移量
mov al, 160
mul dh
mov bx, ax
mov al, 2
;mov dl, 2
mul dl
add bx, ax
; 偏移量存储在bx中
mov ax, 0b800h
mov es, ax
mov di, 0
mov ah, cl
mov ch, 0
print:
mov cl, ds:[si]
jcxz back
mov al, cl
mov es:[bx + di], ax
;mov es:[bx + di +1], al
add di, 2
inc si
jmp short print
back:
;pop dx
pop cx
pop si
pop di
pop es
pop bx
pop ax
ret
codesg ends
end start
浙公网安备 33010602011771号