在使用汇编语言创建文件之前检查文件是否存在

时间:2015-09-30 14:20:12

标签: assembly tasm

我是汇编编程的新手,我想知道在尝试创建文件时如何检查文件是否存在。在这个程序中,如果同一文件夹中存在同名文件,我希望它会抛出错误。但是,它只是忽略它并创建一个文件,无论它是否存在。有人可以告诉我为什么会这样吗?哦,我正在使用TASM进行编译。

.model tiny
.stack 0100h
.data
org 01000h

file db 65,?,64 dup(?)
crstr1 db 'Enter file name to be created:$'
crstr2 db 'File successfuly created!'
db 'Press any key to continue . . .$'
crstr3 db 'File already exists or invalid name!$'


.code
main: jmp begin

begin:
    mov ax, @data
    mov ds, ax
CLEAR
GOTOXY 2,4
DISP crstr1
INP file

    ;file check
    mov cx, 3fh
    mov dx, offset file
    mov ah, 4eh
    int 21h
    je error
    mov ah, 3ch
    mov dx, offset file
    mov cx, 0
    int 21h

    ;no error
    CLEAR
    GOTOXY 2,4
    DISP crstr2
    mov ah, 08
    int 21h
    jmp exit

error:
    mov ah,02h
    mov dh,6
    mov dl,4
    int 10h

    mov ah, 09h
    mov dx, offset crstr3
    int 21h

exit:
int 20h
end main
end

1 个答案:

答案 0 :(得分:0)

使用jc,而不是je。进位标志中返回错误条件。

相关问题