- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北理工第六章 磁盘文件存取实验
第六章 磁盘文件存取实验(设计性实验)一、实验要求和目的理解文件、目录的概念;了解FCB(文件控制块)方式文件管理方法;掌握文件代号式文件存取方式;3.学习使用文件指针读取文件 二、软硬件环境1、硬件环境:计算机系统 windows;2、软件环境:装有MASM、DEBUG、LINK、等应用程序。三、实验涉及的主要知识单元DOS功能调用中断(INT 21H)提供了两类磁盘文件管理功能,一类是FCB(文件控制块)方式,另一类是文件代号式存取方式。 对于文件的管理,实际上是对文件的读写管理, DOS设计了四种存取文件方式:顺序存取方式、随机存取方式、随机分块存取方式和代号法存取方式。文件的处理步骤写之前必须先建立文件、读之前必须先打开文件。写文件之后一定要关闭文件。通过关闭文件,使操作系统确认此文件放在磁盘哪一部分,写后不关闭会导致写入文件不完整。1、文件代号式存取方式: 当用户需要打开或建立一个文件时,必须提供文件标识符。文件标识符用ASCII Z字符串表示。ASCII Z字符串是指文件标识符的ASCII字符串后面再加1个“0”字符。文件标识符的字符串包括驱动器名、路径名和文件名。其格式为[d:][path]filename[.exe]其中d为驱动器名,path为路径名,.exe为文件名后缀。中断21H提供了许多有关目录和文件操作的功能,其中文件代号式存取方式常用的功能如下:2、操作目录的常用功能39H——创建目录 3BH——设置当前目录3AH——删除目录 47H——读取当前目录有关中断功能的详细描述和调用参数在此从略,需要查阅者可参阅相关资料之mk:@MSITStore:d:\我的文档\桌面\汇编教材\汇编语言教程.chm::/Appendix/App31-021.htm目录控制功能。3、用文件句柄操作文件的常用功能3CH——创建文件 4EH——查找到第一个文件3DH——打开文件 4FH——查找下一个文件3EH——关闭文件 56H——文件换名3FH——读文件或设备 57H——读取/设置文件的日期和时间40H——写文件或设备 5AH——创建临时文件41H——删除文件 5BH——创建新文件42H——设置文件指针 67H——设置文件句柄数(最多文件数)43H——读取/设置文件属性6CH——扩展的打开文件功能有关中断功能的详细描述和调用参数在此从略,需要查阅者可参阅相关资料之mk:@MSITStore:d:\我的文档\桌面\汇编教材\汇编语言教程.chm::/Appendix/App31-041.htm文件操作功能。下面简单介绍几种常用的功能:(1).建立文件(3CH)功能:按指定文件名建立文件。入口参数:(AH)=3CH,DS:DX指向ASCII Z字符串的段地址和偏移地址, (CX)=文件属性。出口参数:若操作成功,则CF=0,(AX)=文件代号; 若操作失败,则CF=1,(AX)=错误代码。(2).打开文件(3DH) 功能:打开由ASCII Z串指定的文件。入口参数:(AH)=3DH,DS:DX指向ASCII Z字符串的段地址和偏移地址, (AL)=存取方式代码(0:读文件,1:写文件,2:读、写文件)。出口参数:若操作成功,则CF=0,(AX)=文件代号; 若操作失败,则CF=1,(AX)=错误代码。(3).关闭文件(3EH)功能:关闭文件代号指定的文件。入口参数:(AH)=3EH,(BX)=文件代号。出口参数:若操作成功,则CF=0; 若操作失败,则CF=1,(AX)=错误代码。 (4).读文件(3FH)功能:按文件代号读取文件。入口参数:(AH)=3FH,(BX)=文件代号,(CX)=要读取的字节数; DS:DX指向接收数据缓冲区的段地址和偏移地址。出口参数:若操作成功,则CF=0,(AX)=实际读入字节数,(AX)=0,文件结束; 若操作失败,则CF=1,(AX)=错误代码。(5).写文件(40H)功能:按文件代号写文件。入口参数:(AH)=40H,(BX)=文件代号,(CX)=要写入的字节数; DS:DX指向存放写入信息数据缓冲区的段地址和偏移地址。出口参数:若操作成功,则CF=0,(AX)=写入字节数; 若操作失败,则CF=1,(AX)=错误代码。(6).移动文件指针(42H)功能:移动由文件代号标志的文件读写指针的位置入口参数:在bx预置文件代号,在cx:dx双字中预置移动位移量,在 al 中预置移动方式移动方式:00h 移动后文件指针值=0+移动位移量01h 移动后文件指针值=当前文件指针值+移动位移量02h 移动后文件指针值=文件尾值+移动位移量出口参数:CF=0 表示移动成功,此时CX:DX双字中返回移动后文件指针值;CF=1 表示移动失败,此时AX中返回值为1表示移动方式无效,为6表示无效的文件代
文档评论(0)