Carregar programas para RAM e executá-los NASM 16b
Estou desesperado por uma solução para isso. Eu estou tentando desenvolver o código Assembly, permitindo-me carregar e executar (por entrada do usuário) 2 outros programas Assembly .EXE. Estou tendo dois problemas:
Eu não consigo atribuir o nome do caminho a um registrador válido (ou talvez a sintaxe incorreta)
Eu preciso ser capaz de executar o outro programa após o primeiro (poderia ser qualquer um) iniciado sua execução.
Isto é o que eu tenho até agora:
<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>
Eu só não sei como iniciar outro programa por entrada no programa 'pai', depois de um já estar sendo executado.
Agradeço antecipadamente por sua ajuda! Qualquer informação adicional eu vou ser mais do que feliz em fornecer.
Não é uma sobreposição.Estou usando o NASM 16 bits, o Windows 7 32 bits.