中易网

8086汇编读取磁盘文件 的一个问题

答案:3  悬赏:50  
解决时间 2021-03-05 18:45
8086汇编读取磁盘文件 的一个问题
最佳答案
MOV DX,OFFSET LSZR ;打开kp.txt
MOV AL,0;只读
INT 3DH ;文件代号在AX里面

这段代码怎么能打开文件啊?
改成:
LEA DX,LSZR
MOV AX,3D00H
INT 21H
全部回答
DATA SEGMENT
MESGN DB 'LSZ.TXT',0;文件名字符区
DATAREGDB 256 DUP (0) ;数据区
LSZR DB 'KP.TXT',0
DATA ENDS
;--------------------------------
STACK SEGMENT STACK 'STACK'
DB 100 DUP (?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START: MOV AX,DATA
MOV DS,AX
;================================
MOV DX,OFFSET LSZR ;打开kp.txt
mov ax,3d00h;只读
int 21h ;文件代号在AX里面
MOV DX,OFFSET DATAREG ;读kp.txt
MOV BX,AX;保持文件代号
MOV CX,100 ;读取100字节
mov ah,3FH
int 21h
MOV AH,3EH ;关闭文件kp.txt
INT 21H
LEA DX,MESGN ;创建文件lsz.txt
MOV CX,0;属性值0
MOV AH,3CH
INT 21H
MOV BX,AX;保持文件代号
LEA DX,DATAREG ;写入文件lsz.txt
MOV CX,100
MOV AH,40H
INT 21H
MOV AH,3EH ;关闭lsz.txt
INT 21H
;================================
MOV AH,01H
INT 21H
MOV AX,4C00H
INT 21H
CODE ENDS
END START
两个地方错了
1. MOV DX,OFFSET LSZR ;打开kp.txt
MOV AL,0;只读
INT 3DH ;文件代号在AX里面
改为:
MOV DX,OFFSET LSZR;打开kp.txt
MOV AL,0;只读
mov ah,3DH
int 21h ;文件代号在AX里面
2.MOV DX,OFFSET DATAREG ;读kp.txt
MOV BX,AX;保持文件代号
MOV CX,100 ;读取100字节
INT 3FH
改为:
MOV DX,OFFSET DATAREG ;读kp.txt
MOV BX,AX ;保持文件代号
MOV CX,100;读取100字节
mov ah,3FH
int 21h
正确程序如下:
;********************************
;==需要:程序目录下的文件kp.txt
;==程序将创建文件lsz.txt
;==程序将复制kp.txt的内容到lsz.txt
;********************************
DATASEGMENT
MESGNDB'LSZ.TXT',0 ;文件名字符区
DATAREGDB256 DUP (0) ;数据区
LSZRDB'KP.TXT',0
DATAENDS
;--------------------------------
STACK_SEGMENT STACK 'STACK'
DB100 DUP (?)
STACK_ENDS
CODESEGMENT
ASSUMECS:CODE,DS:DATA,SS:STACK_
START:MOV AX,DATA
MOV DS,AX
;================================
MOV DX,OFFSET LSZR;打开kp.txt
MOV AL,0;只读
mov ah,3DH
int 21h ;文件代号在AX里面
MOV DX,OFFSET DATAREG ;读kp.txt
MOV BX,AX ;保持文件代号
MOV CX,100;读取100字节
mov ah,3FH
int 21h
MOV AH,3EH;关闭文件kp.txt
INT 21H
LEA DX,MESGN;创建文件lsz.txt
MOV CX,0;属性值0
MOV AH,3CH
INT 21H
MOV BX,AX ;保持文件代号
LEA DX,DATAREG;写入文件lsz.txt
MOV CX,100
MOV AH,40H
INT 21H
MOV AH,3EH;关闭lsz.txt
INT 21H
;================================
MOV AH,01H
INT 21H
MOV AX,4C00H
INT 21H
CODEENDS
END START
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
双流哪家烤鱼味道好?
瞿秋白儿时文章开头四句诗是什么意思
狸猫换太子中的真太子的结局是什么?
莎士比亚在《哈姆雷特》一剧中,用抒情诗般的
发财树能在室外雨中淋雨吗?
隆昌驾驶员服务处我想知道这个在什么地方
保罗科比詹姆斯浓眉哥戴维斯考辛斯是不是最强
熬的意思是什么?
话务员都要懂哪些知识?
嫌水坑村这个地址在什么地方,我要处理点事
跨行网银早晨八点多建设转工商的什么时候能到
犯罪刑事拘留到逮捕要多久
les要怎样接吻
游刃有余的反义词
颐和化工怎么去啊,有知道地址的么
推荐资讯
色弱能参加对口单招美术高考吗?急!读了两年了
百圣牛电波表什么调时间
东尼造型(百合店)地址在哪,我要去那里办事
切好的新鲜韭菜放到第二天能炒吗
8除以4表示的意义是什么
我要郑晓丹 麻烦大家给我翻译一下中文名字
读书还是创业?请给我建议!
井圈打地基要多少钱盖一层房子130平方
塔字去掉土字还可以组成什么字
环翠楼茶室这个地址在什么地方,我要处理点事
跟捷信借一万一个月内还清、连本带利得多少钱
武汉有没有MAC专柜?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?