Ładowanie programów do pamięci RAM i wykonywanie ich NASM 16b
Jestem zdesperowany, aby rozwiązać ten problem. Usiłuję opracować kod zespołu pozwalający mi załadować i wykonać (przez wejście użytkownika) 2 inne programy Assembly EXE. Mam dwa problemy:
Wydaje mi się, że nie mogę przypisać ścieżki do poprawnego rejestru (lub może niepoprawnej składni)
Muszę być w stanie wykonać inny program po tym, jak pierwszy z nich (może być albo jednym z nich) zaczął się uruchamiać.
Oto, co mam do tej pory:
<code>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 cmp al,'2' ; if 2 jump to LOADRUN2 JE LOADRUN2 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 </code>
Po prostu nie wiem, jak uruchomić inny program przez wejście w programie „rodzica”, po tym jak już został uruchomiony.
Z góry dziękuje za twoją pomoc! Wszelkie dodatkowe informacje z przyjemnością dostarczę.
Nie jest nakładką.Używam 16 bitów NASM, Windows 7 32 bity.