打开文件

;功能打开驱动器根目录下文件
;注意:必须被打开文件和此程序在同一个根目录下
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
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值