本文共 713 字,大约阅读时间需要 2 分钟。
MS-DOS下文件操作通过int 21中断完成,所以可以通过配置AL、AH寄存器,然后通过int 21中断完成文件的创建、读写、关闭等动作。
详情可参见
其中AH表示EAX寄存低16位中的高八位,用来配置中断功能;AL表示EAX寄存低16位中的低八位,用来配置中断属性
AH | Description | AH | Description |
01 | 02 | ||
05 | 06 | ||
07 | 08 | ||
09 | 0A | ||
0B | 0C | ||
0D | 0E | ||
19 | 25 | ||
2A | 2B | ||
2C | 2D | ||
2E | 30 | ||
35 | |||
36 | 39 | ||
3A | 3B | ||
3C | 3D | ||
3E | 3F | ||
40 | 41 | ||
42 | 43 | ||
47 | 4C | ||
4D | 54 | ||
56 | 57 |
mov dx, word ptr [bp+path] ;dx指向的地址为文件名mov ah, 3Dhmov al, 02h ;Al= access mode 0-read, 1-write, 2-read&writeint 21h
mov ah, 40hmov bx, [bp+handle] ;bx = file handlemov cx, word ptr [bp+buf=2] ;cx = number of bytes to writemov dx, word ptr [bp+buf] ;dx 指向写入数据的bufferint 21h
mov ah, 3Ehmov bx, si ;bx = file handleint 21h
转载地址:http://gkduf.baihongyu.com/