Mov ah, 40h

Получение и анализ кода возврата в материнской программе

End main

Zzz ends

Zzz segment

Db 100 dup (0)

Datasg ends

Paramblk dw 7 dup (0)

Codesg ends

Main endp

Int 21h ; выход в ОС (завершение программы)

Mov ax, 4C00h

Int 21h ; запуск дочернего процесса

Mov dx, offset chname

Mov bx, offset parmblk

Mov ax, 4b00h

Mov es, ax

Mov ax, datasg ; в ах загружается адрес сегмента данных

Int 21h

Mov ah, 4Ah ; освобождение лишней памяти

Mov bx, ax

Sub ax, dx ; определяется размер программы

Mov ds, es

Mov ax, zzz ; в ax загружаем адрес пустого сегмента

Mov ds, ax

Mov ax, datasg

Main proc

Пример материнской программы

codesg segment ‘code’

assume cs: codesg

; запуск дочернего процесса

datasg segment ‘data’

chname db ‘C:Do.exe’

_stack segment stack ‘stack’

_stack ends