鱼C论坛

 找回密码
 立即注册
查看: 1411|回复: 2

汇编读写代码

[复制链接]
发表于 2013-12-17 22:37:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
file:///C:\Users\xp\AppData\Roaming\Tencent\Users\770585725\QQ\WinTemp\RichOle\BUWW0U{E78K(X3Q{~C}U00R.jpg BUWW0U{E78K(X3Q{~C}U00R.jpg 这是通过wfile写入的数据, 1.png
但是后面有空格,通过rfile读的时候只能读后面几位,所以输出的是空格,现在要输出数据,求解???
wfile的代码:data            segment
file            db     'c:\11.txt' , 0           ;创建文件的文件名
buf                         db 21,?,21 dup (?);输入字符串空间
error_message   db     0ah , 'error !' , '$'     ;出错时的提示
message        db     0ah , 'ok !$'          ;操作成功后的提示
handle          dw    ?                    ;保存文件号
data           ends
code           segment
              assume  cs:code  , ds:data
start:
              mov ax , data
              mov ds , ax
                          mov dx , offset buf ;键盘输入到缓冲区
                          mov ah , 0ah
                          int 21h
                  

              mov dx,offset file
              mov cx , 0
              mov ah , 3ch
              int 21h               ;创建文件,若磁盘上原有此文件,则覆盖
              jc error               ;创建出错,转error处
              mov handle , ax         ;保存文件号
              mov bx , ax
              mov cx , 20
              mov dx , offset (buf+2)
              mov ah , 40h
              int 21h                          ;向文件中写入16个字节内容
              jc error                          ;写出错,转error处
              mov bx , handle
              mov ah , 3eh
              int 21h                          ;关闭文件
             jc error                           ;关闭文件出错,转error处
             mov dx , offset message
              mov ah , 9
              int 21h                            ;操作成功后显示提示
              jmp end1
error:
              mov dx , offset error_message
              mov ah , 9
              int 21h                              ;显示错误提示`
end1:
              mov ah , 4ch
              int 21h
code   ends
             end  start


infile的代码:
data            segment
file            db     'c:\11.txt' , 0           ;文件名
buf                 db 100 dup (?);输入字符串空间
error_message    db   0ah , 'error !' , '$'    ;出错时的提示
handle           dw  ?                ;保存文件号
data             ends
code            segment
                assume  cs:code  , ds:data
start:
              mov ax , data
              mov ds , ax

              mov dx , offset file
              mov al , 0
              mov ah , 3dh
              int 21h                  ;打开文件

              jc error                  ;若打开出错,转error
              mov handle , ax           ;保存文件号
              mov bx , ax
              mov cx , 255
              mov dx , offset buf
              mov ah , 3fh
              int 21h                  ;从文件中读255字节→buf

              jc error                  ;若读出错,转error
              mov bx , ax              ;实际读到的字符数送入bx
              mov buf[bx] , '$'          ;在文件结束处放置一“$”符
              mov dx , offset (buf)
              mov ah , 09h
              int 21h                            ;显示文件内容
              mov bx , handle
              mov ah , 3eh
              int 21h                            ;关闭文件
              jnc end1             ;若关闭过程无错,转到end1处返回dos
error:
              mov dx , offset error_message
              mov ah , 9
              int 21h                            ;显示错误提示
end1:
             mov ah , 4ch
             int 21h
code   ends
             end  start



QQ截图20131217223557.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-12-18 13:48:49 | 显示全部楼层
完全懂了。哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-12-23 10:22:16 | 显示全部楼层
支持鱼C,顶一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-17 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表