汇编语言(2), 王爽.
实验10.1.
1 assume cs:code, ds:data, ss:stack 2 stack segment 3 db 16 dup(0) 4 stack ends 5 6 data segment 7 db 'Welcome to masm!', 0 8 data ends 9 10 code segment 11 start: mov dh, 1 12 mov dl, 1 13 mov cl, 2 14 mov ax, data 15 mov ds, ax 16 mov si, 0 17 call show_str 18 19 mov ax, 4c00h 20 int 21h 21 22 show_str: 23 push bp 24 push es 25 push ax 26 push bx 27 push cx 28 push dx 29 30 mov al, 160 31 mul dh 32 mov bx, ax 33 mov al, 2 34 mul dl 35 add ax, bx 36 add ax, 0b800h 37 mov es, ax 38 39 mov bx, 0 40 mov dl, cl 41 s: mov cl, [si+bx] 42 mov ch, 0 43 jcxz ok 44 mov ch, dl 45 mov al, 2 46 mul bx 47 mov bp, ax 48 mov byte ptr es:[bp], cl 49 mov byte ptr es:[bp+1], ch 50 mov dl, ch 51 inc bx 52 jmp short s 53 54 ok: pop dx 55 pop cx 56 pop bx 57 pop ax 58 pop es 59 pop bp 60 ret 61 code ends 62 end start