第11章-文件操作编程分析.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章-文件操作编程分析

第十一章?文件操作编程 ◆ 文件操作的概念 ◆ 常用的文件操作系统功能调用 ◆ 文件操作编程     11.1 文件操作的有关概念 文件操作是指在磁盘上建立文件,打开文件,删除文件,读或写文件内容,关闭文件等操作。 汇编语言的文件操作编程,是通过直接使用DOS提供的一组有关文件操作的系统功能调用实现的。 一、 文件名字串和文件句柄 - 文件名字串:用一个以零结尾的ASCII字串来表示指定文件名。该文件名字串包括驱动器名、路径名、文件名及扩展名。 - 文件名字串的用法:设置DS:DX指向该文件名字串,以告之系统功能要对哪个指定的文件进行操作。例如: FNAME DB ‘C:\MASM\FILE1.DAT’,0 ┊ MOV DX,SEG FNAME MOV DS,DX MOV DX,OFFSET FNAME * 文件名字串后面的0是文件名字串的结尾标志,不能漏掉。 - 文件句柄: 当文件名串被系统确认后,系统返回给应用程序一个16位二进制的控制字,这个字称为文件句柄或文件号,它代表文件名串指定的那个文件。应用程序只需凭借这个句柄,就可对该文件进行读写等操作。 二、文件指针与读写缓冲区 入口参数: DS:DX = 文件名字串首址 CX = 文件属性 出口参数: CF = 0 文件建立成功,AX=文件句柄 CF = 1 建立文件失败,AX=错误代码 三个功能调用的区别是: 1)5AH为建立临时文件,入口参数DS:DX指向的文件名串中只给出路径,而文件名处保留13个字节空间,由该功能添入指定的临时文件名。 2)当要建立的文件已存在时,3CH功能将其长度截为0(使已存在文件丢失),而5BH功能则不予建立(建立文件失败)以保护已存在的文件。 例11.2 将C盘子目录ASM下的数据文件FILE1.DAT从1K字节处开始读取512字节的数据到缓冲区BUFFER中。 DATA SEGMENT BUFFER DB 512 DUP(0) HANDLE DW ? FNAME DB ‘C:ASM\FILE1.DAT’,0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV DX,DATA MOV DS,DX LEA DX,FNAME MOV AX,3D02H ;打开文件 INT 21H MOV BX,AX ;句柄送BX MOV AX,4200H ;从文件头开始移动文件指针(移动方式0) XOR CX,CX ;位移值高位 MOV DX,1024 ;位移值低位 INT 21H 例11.3 将某一字符串输出显示。 显示一字串可以使用09H系统功能调用实现,现在我们使用文件操作功能来实现。 方法1 直接利用系统预置给显示器的句柄号对显示器进行写操作: DISPLAY DB ‘…………’ ;要显示的内容 LEN EQU $-DISPLAY MOV AH,40H ;写功能调用 MOV BX,1 ;显示器句柄 MOV CX,LEN ;显示的字串长度 MOV DX,SEG DISPLAY MOV DS,DX LEA DX,DISPLAY INT 21H * 汇编语言 程序设计 - DOS不但为每一个打开的文件设置句柄,还可为字符设备设置句柄。 - DOS在启动后,已对常用的字符I/O设备预置了5个句柄,见表11.1,并使这些设备处于打开状态,应用程序可将这些设备视同文件一样进行操作,对它们实现数据的I/O读写。 文件指针: -- 系统为每一个打开的文件安排一个读写指针(在FCB内) 以记录文件当前存取的位置; -- 对文件的存取是从当前指针开始,以字节为单位;

文档评论(0)

wbjsn + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档