Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






От слова, тогда для записи параметра в стек нужны, конечно, не-





Сколько команд, а не одна.)

Первыми командами подпрограммы обычно являются сле-

дующие:

PUSH ВР;сохранить в стеке старое значение ВР

MOV SP,BP /установить ВР на вершину стека

SUB SP,m /отвести в стеке место (т байтов) под

; локальные величины подпрограммы.

Поясним эти ≪входные≫ команды. В подпрограмме для обраще-

Ния к ячейкам стека, занятым параметрами, используется (как базо-

вый) регистр ВР: если в ВР занести адрес вершины стека, то для дос-

Тупа к этим ячейкам следует использовать адресные выражения

вида 1[ВР] или, что то же самое, [ВР + i]. (Отметим, что приме-

Нять здесь регистры-модификаторы вх, si и DI нельзя, так как

Формируемые по ним исполнительные адреса будут сегментировать-

Ся по умолчанию по регистру DS, а в данном случае необходимо сег-

Ментирование по ss.) Однако данная подпрограмма может быть вы-

Звана из другой, также использующей регистр ВР, поэтому прежде,

Чем установить ВР на вершину стека, надо спасти в стеке старое

значение этого регистра, что и делает первая из ≪входных≫ команд.

Вторая же команда устанавливает ВР на вершину стека. Если

Предположить, что каждый параметр и адрес возврата занимают по

Слову памяти, тогда доступ к первому параметру обеспечивается ад-

ресным выражением [ВР + 4], ко второму —выражением

[ВР + 6] и т. д.

Режимы процессора. Система команд процессоров 180x86... 417

Подпрограмме может потребоваться место для ее локальных ве-

Личин. Такое место обычно отводится в стеке (а для рекурсивных

подпрограмм только в стеке) ≪над≫ ячейкой, занимаемой старым

значением ВР. Если под эти величины нужно т байтов, то такой ≪за-

хват≫ места можно реализовать простым уменьшением значения ре-

гистра SP на т, что и делает 3-я ≪входная≫ команда. Доступ к ло-







Date: 2015-11-13; view: 349; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию