目录 上一页 下一页 下一章

-214- PC机汇编语言实战精解


fname1
fname2
buffer
handle1
handle2
msg1
msg2
data

code

main
















dup_loop:










assume
db
db
db
dw
dw
db
db
ends

segment
assume
proc
mov
mov

mov
mov
int
jc

mov
mov
mov
mov
int
jc

mov

mov
mov
mov
mov
int
jc

mov
mov
mov
ds:data
'config.txt',0
'config.bak',0
32 dup(0)
?
?
'Error!!!',0dh,0ah,24h
'OK...',0dh,0ah,24h



cs:code
far
ax,data
ds,ax

dx,offset fname1
ax,3d00h
21h
abord

handle1,ax
dx,offset fname2
ah,3ch
cx,0
21h
abord

handle2,ax

ah,3fh
cx,32
dx,offset buffer
bx,handle1
21h
abord

cx,ax
ah,40h
bx,handle2

;源文件名
;目标文件名
;文件读写缓冲区
;保存源文件句柄
;保存目标文件句柄







;初始化DS寄存器


;DX寄存器指向源文件名
;按"读取"方式打开源文件

;若打开操作出错,转ABORD

;将源文件的句柄保存至内存
;DX寄存器指向目标文件名
;准备建立目标文件
;文件属性为"普通"

;文件未能正确建立,转ABORD

;将目标文件句柄保存至内存

;准备从文件中读取数据
;读入32个字节
;DX指向数据缓冲区
;从源文件中读取

;若未能正确读入数据,转ABORD

;CX寄存器置入实际读入的字节数
;准备写入文件
;写入目标文件中

Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 下一章