私は、(ユーザーの入力によって) 2 つの他のアセンブリ .EXE プログラムを読み込んで実行できるようにするアセンブリ コードを開発しようとしています。私は2つの問題を抱えています:
-パス名を有効なレジスタに割り当てることができないようです (または、構文が正しくない可能性があります)。
-最初のプログラム (どちらかである可能性があります) が実行を開始した後、他のプログラムを実行できるようにする必要があります。
これは私がこれまでに持っているものです:
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 ビットを使用しています。