📄 file.txt
字号:
; NEWFILE功能: 创建文件
;调用参数: PATHNAM:文件说明;FILEHANDLE:文件句柄
;返回参数: AL=0 成功,FILEHANDLE=文件句柄; AL =1 失败
NEWFILE MACRO PATHNAM,FILEHANDLE
LOCAL ERROR_1,N_QUIT
PUSH BX
PUSH CX
PUSH DX
MOV AH,3CH
MOV CX,0
LEA DX,PATHNAM
INT 21H
JC ERROR_1 ;建立文件错转
MOV FILEHANDLE,AX ;保存文件标记
MOV AL,1
SHOW N_OK ;MESS4 信息,待改正,下同
JMP N_QUIT
ERROR_1:
SHOW N_ERR
MOV AL,0
N_QUIT:
POP DX
POP CX
POP BX
ENDM
; OPENFILE功能:打开文件
;调用参数: PNAME:文件说明;FILEHANDLE:文件句柄
;返回参数: AL=0成功, FILEHANDLE=文件句柄; AL =1失败
OPENFILE MACRO PNAME, FILEHANDLE
LOCAL ERROR_2,O_QUIT
;PUSH BX
PUSH CX
PUSH DX
MOV AH,3DH
LEA DX,PNAME
MOV AL,2
INT 21H
JC ERROR_2
MOV FILEHANDLE,AX
SHOW O_OK
MOV AL,1
JMP O_QUIT
ERROR_2:
SHOW O_ERR
MOV AL,0
O_QUIT:
POP DX
POP CX
;POP BX
ENDM
; WRITEFILE功能: 写文件
;调用参数:LENGTH:写字节数;BUF:缓冲区首址;FILEHANDLE:文件句柄
;返回参数: AL=0 成功;AL =1失败
WRITEFILE MACRO LENGTH,BUF,FILEHANDLE
LOCAL ERROR_3,W_QUIT
PUSH BX
PUSH CX
PUSH DX
MOV BX,FILEHANDLE
MOV CX,LENGTH
MOV AH,40H
LEA DX,BUF
INT 21H
JC ERROR_3
MOV AL,1
JMP W_QUIT
ERROR_3: SHOW MESS4
MOV AL,0
W_QUIT: POP DX
POP CX
POP BX
ENDM
; MOVHANDLE功能: 移动文件指针到制定位置
;调用参数: LENGTH:移动长度,mode:移动方式:0为从文件首,1为从文件当前位置,2为从文件末 FILEHANDLE:文件句柄
;返回参数: 文件句柄:FILEHANDLE
MOVHANDLE MACRO LENGTH,MODE,FILEHANDLE
MOV AH,42H
MOV AL,MODE
MOV DX,LENGTH
XOR CX,CX
MOV BX,FILEHANDLE
INT 21H
ENDM
; READFILE功能: 读文件
;调用参数: LENGTH:读字节数;BUF:缓冲区首址; FILEHANDLE:文件句柄
;返回参数: AL=0 成功;AL =1失败
READFILE MACRO LENGTH,BUF,FILEHANDLE
LOCAL ERROR_4,R_QUIT
PUSH BX
PUSH CX
PUSH DX
LEA DX,BUF
MOV AH,3FH
MOV BX,FILEHANDLE
MOV CX,LENGTH
INT 21H
JC ERROR_4
MOV AL,0
JMP R_QUIT
ERROR_4: MOV AL,1
R_QUIT: POP DX
POP CX
POP BX
ENDM
; CLOSEFILE功能: 关闭文件
;调用参数: FILEHANDLE:文件句柄
;返回参数: AL=0 成功;AL =1失败
CLOSEFILE MACRO FILEHANDLE
LOCAL ERROR_5,C_QUIT
PUSH BX
PUSH CX
PUSH DX
MOV AH,3EH
MOV BX,FILEHANDLE
INT 21H
JC ERROR_5
MOV AL,0
JMP C_QUIT
ERROR_5 :
MOV AL,1
C_QUIT:
POP DX
POP CX
POP BX
ENDM
; LOADDS功能: 给DS赋值
;调用参数: 数据段名:DATA_NAME
;返回参数:无
LOADDS MACRO DATA_NAME
MOV AX,DATA_NAME
MOV DS,AX
ENDM
; RETURN功能: 返回DOS
;调用参数:无
;返回参数:无
RETURN MACRO
MOV AX,4C00H
INT 21H
ENDM
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -