組合語言學習記錄--輸入輸出字串

鍾超發表於2010-05-24

data segment

buff db 255 ;緩衝區,用於存放字串

db ?

db 255 dup (?)

crlf db 0ah, 0dh, "$" ;回車換行

data ends

code segment

assume ds:data, cs:code

start:

mov ax, data ;取資料段存入ds中

mov ds, ax

lea dx, buff ;輸入字串到buff

mov ah, 0ah

int 21h

lea dx, crlf ;輸出回車換行

mov ah, 9h

int 21h

lea si, buff + 2h ;取字串地址到si中

mov cl, buff + 1h ;取字元個數到cl中

next:

cmp cl, 0h

je finish

mov dl, byte ptr [si] ;輸出一個字元

mov ah, 2h

int 21h

dec cl ;計數器減1

inc si

jmp next

finish:

mov ah, 4ch

int 21h

code ends

end start

相關文章