编辑: 匕趟臃39 2019-07-08
一.

实验目的: 1. 掌握 DOS 系统的文件管理及调用方法 2. 了解使用程序段前缀 PSP 的方法 3. 了解程序加载过程及实现方法 二. 实验要求: 1. 掌握利用系统调用进行文件管理的方法 A 了解 FCB ( File Control Block ) 块进行文件操作的方法 B 掌握使用句柄进行文件操作的方法 C 掌握文件的建立、打开、读写及关闭方法 2. 程序段前缀 PSP 的使用 A PSP 各段含义及用途 B 掌握利用 PSP 各段进行编程的方法 3. 程序加载及实现 A DOS 下EXEC 子功能的应用 B 加载程序的设计和实现 三. 实验仪器: PC 机一台 四. 实验内容: 9.1 在当前目录建立一文件,文件内写入 ABCDEFG. . .XYZ ,然后在 DOS 下使用 TYPE 命令 检查. 9.2 打开一内容为大写英文字母的文件,将其内容加一固定常数使其变为小写,可用 TPYE 命令检 察. 9.3 编一程序实现利用 PSP ,将参数表在屏幕上显示. 例如 程序名: ABC.EXE 则>

ABC WE ARE THE WORLD. 显示 WE ARE THE WORLD. 9.

4 编一程序实现将文件根据参数表上的 +N ( 或-N ) 命令, 对其 内容进行加 N ( 或减 N ) 操作.可利用 ASCII 码表进行检查. 例如 程序名: PM_FILE.EXE 文件名: ASCII.DAT 内容: ABC . . . XYZ 则>

PM_FILE ASCII.DAT +3 显示 DEF . . . Z[/] 9.5 完成 DOS 下的 COPY 命令. 9.6 根据自定的规则,将文件进行加密.同时给出解密程序. 9.7 主程序实现功能选择, 根据输入分别执行加载不同的程序及退 出. 例如 主程序显示: Please input choise ( 1,2,3 ) QUIT

4 根据输入分别加载 PROG1.EXE PROG2.EXE PROG3.EXE PROG1.EXE 功能: 显示 NO ONE KNOWS PROG2.EXE 功能: 显示 I PASS THE TEST PROG3.EXE 功能: 显示 TO BE OR NOT TO BE 9.8 自编题 五. 实验原理: DOS 下的文件管理 DOS 支持两种文件服务功能,一种是早期的文件控制块 ( FCB ) ,另一种是句柄方式 ( Handle ) . 采用 FCB 方式进行文件操作,由于 FCB 结构复杂,用户要在使用前自己开辟 FCB 区,给编程者增加了 难度,目前已很少使用. 为了减轻编程者在面对文件管理编程时的负担,在DOS V2.00 以上版本中采用了另外一种类似于 UNIX/XENIX 的文件服务方式,即句柄方式访问磁盘文件.用句柄方式访问文件比较简单,编程者只要按 要求给出文件名的字符串,然后进行建立或打开操作后, DOS 系统内部会自动建立文件控制块,并为该 文件分配一通道号(称为该文件的句柄) ,利用该通道号,编程者就可根据需要对已给的文件名对应的文件 进行操作. 句柄实际上就是

16 位的二进制数,与使用 FCB 方式相比,用户在进行文件操作时,只要在数据区 内分配一个字单元保存句柄即可. DOS 还将系统的标准设备用特定的字符定义,因此,使用这些设备时,也可象文件一样操作,例如, 利用并行口打印文件,就可采用 PRN 的设备名 (与文件名使用方式相同) 打开设备,然后象写文件一 样进行写操作即可,使用十分方便, (实际上, DOS 在建立时已将几个标准设备用句柄的方式打开,直接 使用也可) . 使用句柄方式进行磁盘文件处理的过程:

1 程序应开辟以下存储区域 A. 文件名域 大小至少定义为所需文件名串长加

1 (若需要可包括驱动器,路径,文件名和扩展名) B. 句柄域 字定义 C. 缓冲区 进行文件处理的缓冲区,其大小无特殊要求,当然以大为佳, 大的缓冲区可减少读写盘 次数.

2 获得需打开合法的文件名 ( 可程序中直接给出或利用 21H 功能 0AH,或利用 PSP) .

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题