我必須從鍵盤輸入中讀取文件的名稱,然後在屏幕上打印來自此文件的偶數行 我確實使用int的3dh函數打開了文件21h,但我的問題是如何逐行閱讀以便只打印偶數行?我並不完全理解如何使用回車或換行。這是我到目前爲止已經完成:從程序集中的文件中讀取偶數行
assume cs:code, ds:data
data segment
msg db 'Give the name of the file: $'
fileName db 12,?,13 dup (?)
buffer db 21 dup (?)
openErrorMsg db 'The file does not exist.$'
handler dw 0
data ends
code segment
start:
mov ax, data
mov ds, ax
mov ah, 09h
mov dx, offset msg
int 21h
mov ah, 0ah
mov dx, offset fileName
int 21h
mov bl, fileName[1]
mov bh, 0
add bx, offset fileName
add bx, 2
mov byte ptr [bx], 0
mov ah, 3dh
mov al, 0
mov dx, offset fileName+2
int 21h
jc openError
; ?? -
openError:
mov ah, 09h
mov dx, offset openErrorMsg
int 21h
jmp endPrg
endPrg:
mov ah, 3eh
mov bx, handler
int 21h
mov ax,4c00h
int 21h
code ends
end start
不要忘了返回的句柄保存於你在哪裏apparantly卡住點你的第一個動作。然後使用Dirk Wolfgang Glomp給出的建議來處理文件。 – 2014-12-14 21:50:45