将text指向的三行文本保存到文件中去。
assume cs:code, ds:data; ss:stack
stack segment
db 100H dup (?)
stack ends
data segment
filename db 'a.txt',0 ;文件名
text db 'I am so happy!', 10,13
db 'I can write message to a file!', 10, 13
db 'oh, so sweat.' ;要写入的文字
handle dw ? ;保存句柄
data ends
code segment
start:
mov ax, data
mov ds, ax
;创建文件用21h中断的3ch功能
mov cx, 0 ;文件属性
lea dx, filename
mov ah, 3ch
int 21h
;利用出口参数判断是否成功,若成功,则保存句柄
jc stop ;CF=1则停止
mov handle, ax ;保存文件句柄
;向文件中写入文本用21h中断的40h功能
mov bx, handle ;文件句柄
mov cx, offset handle - offset text
lea dx, text
mov ah, 40h
int 21h
;利用出口参数判断是否成功,失败则退出
jc stop
;关闭文件用21h中断的3eh功能
mov bx, handle
mov ah, 3eh
int 21h
stop:
mov ah,4ch
int 21h
code ends
end start