我正在尝试开发汇编代码,允许我加载和执行(通过用户输入)2 个其他汇编 .EXE 程序。我有两个问题:
-我似乎无法将路径名分配给有效的寄存器(或者语法可能不正确)
-我需要能够在第一个程序(可能是其中一个)开始执行后执行另一个程序。
这是我到目前为止所拥有的:
mov ax,cs ; moving code segment to data segment
mov ds,ax
mov ah,1h ; here I read from keyboard
int 21h
mov dl,al
cmp al,'1' ; if 1 jump to LOADRUN1
JE LOADRUN1
popf
cmp al,'2' ; if 1 jump to LOADRUN2
JE LOADRUN2
popf
LOADRUN1:
MOV AH,4BH
MOV AL,00
LEA DX,[PROGNAME1] ; Not sure if it works
INT 21H
LOADRUN2:
MOV AH,4BH
MOV AL,00
LEA DX,[PROGNAME2] ; Not sure if it works
INT 21H
; Here I define the bytes containing the pathnames
PROGNAME1 db 'C:\Users\Usuario\NASM\Adding.exe',0
PROGNAME2 db 'C:\Users\Usuario\NASM\Substracting.exe',0
我只是不知道如何通过在“父”程序中的输入来启动另一个程序,在一个程序已经执行之后。
在此先感谢您的帮助!我很乐意提供任何其他信息。
-我使用的是 NASM 16 位,Windows 7 32 位。