[Emu 8086]无法打开文件

Lin*_*ind 0 assembly emulation x86-16

程序应该打开文件,从中读取并打印前 4 个字符。

  • 我不知道问题出在哪里。我什至在那里自己创建了文件,但它仍然无法打开文件。

    org 100h
    jmp start  
    filename db "C:\f1.txt",0
    errormessage: db "Ndodhi nje gabim gjate ekzekutimit$"  
    Buffer db 50h dup(?)
    start:   
      lea dx,filename
      mov ah,3Dh
      mov al,0
      int 21h
      jc error  
      mov bx,ax         
      mov ah,3Fh
      mov cx,4
      lea dx,Buffer
      int 21h
      jmp end
    error:mov dx,offset errormessage
      mov ah,09h
      int 21h
    end: ret
    
    Run Code Online (Sandbox Code Playgroud)

Ruu*_*man 5

您正在使用模拟器。您的程序可以访问模拟C:驱动器,该驱动器不是C:您 PC的真实驱动器。

正如它在http://www.emu8086.com/ 上所说:

dos 文件系统在 \vdrive\ 文件夹中模拟

换句话说,把文件放在文件f1.txt夹中c:\emu8086\vdrive\c;您的程序将看到该文件似乎C:\.

如果您将 emu8086 安装在 以外的文件夹中c:\emu8086,那么显然您必须在vdrive那里寻找。