Целью работы является исследование аппаратных средств модульного программирования и системы прерывания, а также изучение способов их использования при программировании.
4.1. СРЕДСТВА МОДУЛЬНОГО ПРОГРАММИРОВАНИЯ
4.1.1. ПРОЦЕДУРА.
Процедурой (или подпрограммой) называется особым образом организованная последовательность команд процессора, выполнение которой вызывается специальной командой вызова процедуры. Переход к процедуре называется вызовом процедуры и производится командой CALL, a соответствующий переход назад, к выполнению команды, следующей непосредственно за командой вызова CALL, называется возвратом из процедуры. Возврат из процедуры выполняется по команде возврата RET. Команды, составляющие процедуру, располагаются в последовательных ячейках памяти. Адресом процедуры является адрес ее первой команды.
а) Программа Процедура PROC_1
|
Процедура PROC_2 Процедура PROC_3
б) Программа
Рис. 4.1. Многократные вызовы процедур (а)
и вложенные процедуры (б)
Если к одной и той же процедуре делается несколько вызовов из разных мест, возврат после каждого такого вызова осуществляется к команде, находящейся после команды вызова процедуры (рис.4.1). Следовательно, в памяти нужно хранить только одну копию процедуры, даже если процедура вызывается несколько раз. При вложении процедур каждый возврат производится в соответствующую, а не в старшую по иерархии, процедуру.
Представление программы в виде совокупности процедур обеспечивает возможность разделения кода программы на от дельные модули, которые можно по отдельности разрабатывать, тестировать и документировать. Процедуры можно хранить в библиотеках и использовать несколькими программами,
в том числе и одновременно. Иными словами, процедуры позволяют использовать удобства модульного программирования, что сокращает размер кода программы и уменьшает трудоемкость создания программ. Основной недостаток процедур заключается в необходимости использования дополнительных команд CALL и RET.
