;功能打开驱动器根目录下文件
;注意:必须被打开文件和此程序在同一个根目录下
data segment
assume ds:data ;定义数据段
my_fcb label byte
drive db 0 ;驱动器号,0:当前 1:A 2:B
file_name db '1 ' ;文件名
ext_name db 'txt' ;扩展名
cur_block dw ? ;当前记录块
rec_size dw ? ;记录长度
file_size dw 2 dup(?) ;文件长度 有系统填入
crea_date dw ? ;建立或修改后的日期,由系统填入
postion db 10 dup(?) ;保留空间,由系统填入
cur_rec db ? ;当前记录号
rel_rec dw 2 dup(?) ;相对记录号
errmsg db 'error',0dh,0ah,24h
data ends
code segment
assume cs:code
main proc far
mov ax,data ;初始化DS指向数据段
mov ds,ax
mov dx,offset my_fcb ;DX寄存器指向未打开的FCB
mov ah,0fh ;选择DOS API 的0FH功能
int 21h ;打开文件
or al,al ;al寄存器返回值0了吗
jnz err_exit ;没有返回值则转err_exit结束
mov ah,4ch
int 21h ;关闭程序
err_exit:
mov ah,9 ;选择DOS API 的09功能
mov dx,offset errmsg ;输出错误信息
int 21h
mov ah,4ch ;关闭程序
int 21h
main endp
code ends
end main