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

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



    кода. В следующем примере сначала отводится блок, размером 1024
    байта. При этом BX содержит требуемое число 16-байтных парагра-
    фов, а при завершении стартовый адрес блока равен AX:0 (т.е.
    смещение 0 в сегменте со значением, содержащимся в AX). Вторая
    часть примера освобождает этот же блок, как и требуется при за-
    вершении программы. В данном случае значение полученное в AX
    помещается в ES. DOS следит за размером блока и знает какое коли-
    чество параграфов надо освободить.
    ;-отведение блока размером 1024 байта
    MOV AH,48H ;номер функции
    MOV BX,64 ;требуем 64 параграфа
    INT 21H ;пытаемся отвести блок
    JC ERROR ;обрабатываем ошибку в случае неудачи
    MOV BLOCK_SEG,AX;иначе сохраняем адрес блока
    .
    ;-освобождаем тот же блок
    MOV AX,BLOCK_SEG ;получаем стартовый адрес блока
    MOV ES,AX ;помещаем его в ES
    MOV AH,49H ;номер требуемой функции
    INT 21H ;освобождаем блок памяти
    Наконец, приведем пример использования функции 4AH. ES содер-
    жит значение сегмента PSP, т.е. самого первого байта памяти, с
    которого загружена программа. Это значение присваивается ES при
    старте задачи. Для использования SETBLOCK надо либо вызывать эту
    функцию в самом начале программы (прежде чем ES будет изменен),
    либо сохранить его начальное значение для последующего использо-
    вания.

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




1637888474