asm汇编源代码之文件操作相关

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 提供7个子程序:   1. 关闭文件 FCLOSE   2. 打开文件 FOPEN   3. 文件大小 FSIZE   4. 读文件 FREAD   5. 写文件 FWRITE   6. 建立文件 FCREATE   7. 读取或设置文件指针 FPOS 具体功能及参数描述如下 |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ; ---------------------------- FCLOSE PROC  FAR ; IN: ;   AX=FILE NUMBER ; ____________________________ FOPEN  PROC  FAR ; IN: ;   DS:DX=FILE NAME ;   AL=OPEN MODE ; OUT: ;   CF=0  AX=FILE NUM ;   CF=1  AX=ERROR CODE ; ____________________________ FSIZE  PROC  FAR ; IN: ;   AX=FILE NUM ; OUT: ;   CF=0 DX:AX=FILE_SIZE ;   CF=1 AX=ERROR CODE ; ____________________________ FREAD  PROC  NEAR ; IN: ;   DS:DX=DATA BUFFER ;   AX=FILE NUM ;   CX=LENGTH ;   CF=0 AX=READ SIZE ;   CF=1 AX=ERROR CODE ; ____________________________ FWRITE PROC  FAR ; IN: ;   DS:DX=DATA BUFFER ;   AX=FILE NUM ;   CX=LENGTH ; OUT: ;   CF=0 AX=WRITE SIZE ;   CF=1 AX=ERROR CODE ; ____________________________ FCREATE PROC  FAR ; IN: ;   DS:DX=FILE NAME ; OUT: ;   CF=0 AX=FILE NUM ;   CF=1 AX=ERROR CODE ; ____________________________ FPOS  PROC  FAR ; IN: ;   AL=MODE ;   BX=FILE NUM ;   CX:DX=NEW POSITION ; OUT: ;   DX:AX=NEW POSITION   | ; more source code at http://www.ahjoe.com/source/srcdown.asp PUBLIC FOPEN, FSIZE, FREAD, FWRITE, FCREATE, FPOS, FCLOSE CODE SEGMENT ASSUME CS:CODE FCLOSE PROC FAR ; IN: ; AX=FILE NO. PUSH BX MOV BX, AX MOV AH, 3EH INT 21H POP BX RETF FCLOSE ENDP FOPEN PROC FAR ; IN: ; DS:DX=FILE NAME ; AL=OPEN MODE ; OUT: ; CF=0 AX=FILE NUM ; CF=1 AX=ERROR CODE MOV AH, 3DH INT 21H RETF FOPEN ENDP FSIZE PROC FAR ; IN: ; AX=FILE NUM ; OUT: ; CF=0 DX:AX=FILE_SIZE ; CF=1 AX=ERROR CODE PUSH BX PUSH CX MOV BX, AX MOV AX, 4202H XOR CX, CX MOV DX, CX INT 21H PUSH AX PUSH DX MOV CX, 0 MOV DX, 0 MOV AX, 4200H INT 21H POP DX POP AX POP CX POP BX RETF FSIZE ENDP FREAD PROC NEAR ; IN: ; DS:DX=DATA BUFFER ; AX=FILE NUM ; CX=LENGTH ; OUT: ; CF=0 AX=READ SIZE ; CF=1 AX=ERROR CODE PUSH BX MOV BX, AX MOV AH, 3FH INT 21H POP BX RETF FREAD ENDP FWRITE PROC FAR ; IN: ; DS:DX=DATA BUFFER ; AX=FILE NUM ; CX=LENGTH ; OUT: ; CF=0 AX=WRITE SIZE ; CF=1 AX=ERROR CODE PUSH BX MOV BX, AX MOV AH, 40H INT 21H POP BX RETF FWRITE ENDP FCREATE PROC FAR ; IN: ; DS:DX=FILE NAME ; OUT: ; CF=0 AX=FILE NUM ; CF=1 AX=ERROR CODE MOV CX, 0 MOV AH, 3CH INT 21H RETF FCREATE ENDP FPOS PROC FAR ; IN: ; AL=MODE ; BX=FILE NUM ; CX:DX=NEW POSITION ; OUT: ; DX:AX=NEW POSITION MOV AH,42H INT 21H RETF FPOS ENDP CODE ENDS END FOPEN |

相关推荐
春日见20 分钟前
眼在手上外参标定保姆级教学---离线手眼标定(vscode + opencv)
linux·运维·开发语言·人工智能·数码相机·计算机视觉·matlab
java小吕布1 小时前
CentOS 7 服务器性能监控实战指南
linux·服务器·centos
椰子今天很可爱1 小时前
仿照muduo库实现一个高并发服务器
linux·服务器·c++
小豆子范德萨1 小时前
cursor连接远程window服务器的WSL-ubuntu
运维·服务器·ubuntu
Xの哲學8 小时前
Linux grep命令:文本搜索的艺术与科学
linux·服务器·算法·架构·边缘计算
夜月yeyue8 小时前
Linux 调度类(sched_class)
linux·运维·c语言·单片机·性能优化
林义满8 小时前
运维转型让产线 “少掉链”:上海义满汽车零部件借智能运维降本增效,年减损失超 200 万
运维·汽车
VekiSon9 小时前
Linux系统编程——IPC进程间通信:信号通信与共享内存
linux·运维·服务器
南山nash9 小时前
CentOs7 安装 Docker 详细步骤
linux·运维·docker·容器
徐先生 @_@|||9 小时前
Conda最基础使用命令
linux·windows·conda