⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 r_w _regiest.txt

📁 设计题目:读写磁盘文件 设计要求:能正确执行对硬盘文件的读写 设计应用:熟练基本的汇编编程
💻 TXT
字号:
第四节 读写磁盘文件
设计题目:读写磁盘文件
设计要求:能正确执行对硬盘文件的读写
设计应用:熟练基本的汇编编程,为后来编程打基础。
设计思路:反复利用DOS系统功能调用,进行操作。
设计框图:(见下一页)
设计代码:TITLE  FILE.TXT
;******************************************************************
.model small
.stack  64
.data
file db 'd:\masm\l.txt',0                    ;创建文件的文件名
buf db 0ah,0dh,'I love the world!'           ;写到文件中去的内容
          werrmsg db 0ah,0dh,'Write or Close error occurs!','$' ;出错时的提示

           ;代码续
           message db 0ah,0dh,'Done,OK!','$'          ;操作成功后的提示
handle  dw ?                               ;保存文件号
rbuf db 256 dup(0)                         ;文件内容暂存区
rerrmsg db 0ah,0dh,'Read error occurs!','$'    ;出错时的提示
;**************************************************************
.code
main  proc far
                 mov  ax,@data
                 mov  ds,ax
                 mov  dx,offset file
                 mov  cx,0
                 mov  ah,3ch
                 int  21h              ;创建文件,若磁盘上原有此文件,则覆盖
                 jc   werror           ;创建出错,转werror处
                 mov  handle,ax        ;保存文件号
                 mov  bx,ax
                 mov  cx,16 
                 mov  dx,offset buf
                 mov  ah,40h
                 int  21h              ;向文件中写入16个字节内容
                 jc   werror           ;写出错,转werror处
                 mov  bx,handle
                 mov  ah,3eh
                 int  21h              ;关闭文件
                 jc   werror           ;关闭文件出错,转werror处
                 mov  dx,offset message
                 mov  ah,9
                 int  21h               ;操作成功后显示提示
                 jmp  next 
werror:
                 mov  dx,offset werrmsg
                 mov  ah,9
                 int  21h                    ;显示错误提示`
                 jmp  end1                        
next:
                 mov  dx,offset file
                 mov  al,0
                 mov  ah,3dh
                 int  21h                     ;打开文件
                 jc   rerror             ;若打开出错,转werror
                 mov  handle,ax             ;保存文件号
                 mov  bx,ax
                 mov  cx,255
                 mov  dx,offset rbuf
                 mov  ah,3fh
                 int  21h                 ;从文件中读255字节→rbuf
                 jc   rerror              ;若读出错,转rerror
                 mov  bx,ax                 ;实际读到的字符数送入bx
                 mov  rbuf[bx],'$'          ;在文件结束处放置一“$”符
                 mov  dx,offset rbuf
                 mov  ah,9
                 int  21h                   ;显示文件内容
                 mov  bx,handle
                 mov  ah,3eh
                 int  21h                   ;关闭文件
                 jnc  end1                 ;若关闭过程无错,转到end1处返回dos
rerror:
                  mov  dx,offset rerrmsg
                  mov  ah,9
                  int  21h                   ;显示错误提示
end1:
                  mov  ax,4c00h
                  int  21h
main  endp
                 end  main     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -