目录 上一页 下一页 下一章

第8章 文件句柄功能与磁盘 -221-

main











loop1:





























proc
mov
mov

mov
mov
int
jc

mov
mov
mov

push
mov
int

mov
mov
int

lodsw
mov
lodsw
mov
mov
mov
int
jc

mov
mov
mov
int
jc

call

mov
int
pop
loop
far
ax,data
ds,ax

dx,offset fname
ax,3d00h
21h
exit

cx,5
bx,ax
si,offset off

cx
ax,0003h
10h

ah,09h
dx,offset msg
21h


dx,ax

cx,ax
ah,42h
al,00h
21h
exit

ah,3fh
dx,offset buffer
cx,32
21h
exit

disp

ah,0
16h
cx
loop1

;初始化DS寄存器


;DX指向待处理的文件名
;按"读取"的方式打开文件

;若文件打开出错,转EXIT结束

;准备读取5组数据
;BX寄存器获得文件句柄
;SI寄存器指向偏移值数组

;暂存CX寄存器
;重置显示模式,清除屏幕


;显示字符串MSG



;取得第一个偏移量的低字
;将偏移量低字送入DX寄存器
;取得第一个偏移量的高字
;将偏移量高字送入CX寄存器
;调用42H移动文件指针
;从文件首部计数偏移量

;若移动指针出错,转EXIT结束

;准备读取数据
;DX寄存器指向文件缓冲区
;读入32个字节

;若读取出错,转EXIT结束

;调用DISP子过程

;等待键盘输入

;恢复CX寄存器
;转LOOP1继续读取下一组数据

Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 下一章