Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Раздел 9. Работа с подпрограммами в машинных кодах



camac‑basic ‑ интерпретатор программы, хранящиеся в памяти в виде упакованного цифрового текста. Во время работы программы считываются, интерпретируются в машинные коды и выполняются. Такой порядок работы выгоден для пользователя: при нем можно довольно быстро модифицировать программы. В применяемых сейчас программах можно использовать подпрограммы, написанные на языке ассемблера либо других языках, что увеличивает быстродействие. Подпрограммы должны транслироваться в машинные коды и храниться на диске в файлах формата hex‑ascii intel.

9.1. free, memtop ‑ системные инструкции для управления памятью

При инициализации интерпретатора языка camac‑basic ему предоставляется вся область транзитных программ (тра) ос cp/m, включая область перезагружаемого сегмента сср. Ограничить область памяти, используемой интерпретатором можно с помощью инструкции, указав в качестве параметра значение верхней границы памяти, предоставляемой для работы интерпретатора. Оставшуюся свободную область можно использовать для загрузки и хранения подпрограмм в машинных кодах. Для выделения свободной области необходимого объема можно применить инструкцию free, указав в качестве параметра размер области в байтах. После исполнения системных инструкций free и memtop выдается информация о параметрах распределения памяти (размер и границы области программы, области доступной интерпретатору и свободной области). Применение инструкции free без параметров позволяет получить только справочную информацию.

9.2. load ‑ команда загрузки кода подпрограмм

Если выделена область свободной памяти, то в процессе работы программы или перед ее исполнением возможна загрузка кода подпрограмм с помощью команды load. Предварительно подпрограммы должны быть записаны в файлах на дисках комплекса в стандартном формате hex-ascii intel. Загрузка осуществляется по параметрам, определенным в записях файла. Команда загрузки должна быть подана в следующем виде:

load [[d:]filename[.тyp]]

где d ‑ имя устройства (по умолчанию текущее присоединенное устройство), filename ‑ имя файла, typ - тип файла (по умолчанию hex).

При подаче инструкции без параметров используется файл subprogr.hex на текущем присоединенном диске. В момент исполнения команды load файл ввода/вывода данных не может быть присоединен.





Дата публикования: 2014-12-25; Прочитано: 145 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...