Продвижение сайта стоимость самая доступная.
Лучшие книги интернета
Материалы предоставлены только для просмотра. Любое использование материалов в коммерческих целях запрещено

Справочник программиста на персональном компьютере фирмы IBM68



    Указатель стека инициализируется на вершину адресного пространст-
    ва 64K, используемого программой (напоминаем, что стек растет
    вниз в памяти). В программах COM он должен быть сделан меньше чем
    64K, SS и SP могут быть изменены. Имейте ввиду, что при компонов-
    ке программы компоновщик выдаст сообщение об ошибке, указывающее,
    что сегмент стека отсутствует. Игнорируйте его.
    7. Завершите программу либо инструкцией RET, либо прерыванием
    20H. Прерывание 20H - это стандартная функция для завершения
    программы и возврата управления в DOS. Даже когда программа за-
    вершается инструкцией RET, на самом деле используется прерывание
    20H. Это происходит потому, что вершина стека первоначально со-
    держит 0. При выполнении завершающей инструкции программы RET, 0
    выталкивается из стека, переназначая счетчик команд на начало
    PSP. Находящаяся в этой ячейке функция 20H, выполняется как сле-
    дующая инструкция программы, вызывая передачу управления в DOS.
    Все это означает, что Вам не надо при старте программы помещать
    на стек DS и 0 (PUSH DS / MOV AX,0 / PUSH AX), как это требуется
    для EXE файлов.
    После того как программа сконструирована таким образом, ас-
    семблируйте и компонуйте ее как обычно. Затем преобразуйте ее в
    форму COM c помощью утилиты EXE2BIN, имеющейся в MS DOS. Если имя
    программы, построенной компоновщиком MYPROG.EXE, то просто введи-
    те команду EXE2BIN MYPROG. В результате Вы получите программный
    файл с именем MYPROG.BIN. Все что Вам останется после этого сде-
    лать - переименовать этот файл в MYPROG.COM. Вы можете также
    сразу использовать команду EXE2BIN MYPROG MYPROG.COM, для получе-
    ния файла с расширением COM.

Предыдущая страница    68    Следующая страница




1693679890