Реферат: Язык программирования Норма

операторов и др. Перед началом этапа синтаксического анализа, длямаксимальной

очистки памяти происходит конвертация начальных таблиц имен и констант. Эти

таблицы поступают на вход следующего этапа, где происходит построение графа

информационных зависимостей, который используется на следуещем этапе при

определение порядка вычислений и разделение на параллельные ветви, независящие

друг от друга. На выходе получаем внутренние коды. Внутренние коды поступают

на вход кодогенерации. Выходом кодогенерации является программа на языке

Фортран.

Для обеспечения доступа к верхней памяти,а также для возможного свопинга

все операции с оперативной памятью осуществляются с использованием библиотеки

функций менеджера памяти, написанной сотрудниками института прикладной

математики.

4 Описание и решение задачи.

4.1 Постановка задачи.

В свете вышесказанного перед нами (группой разработчиков) встала задача

напсания транслятора с языка Норма с использованием инструментальных средств

языка программирования Си и библиотеки функций работы с операивной памятью.

Передо нами (двумя разработчиками) была поставлена задача написания функций

работы с таблицами имен и констант.

4.2 Решение задачи.

Для начального заполнения таблиц имен и констант были выбраны хэш-таблици.

При этом мы проигрывали в использовании оперативной памяти, но выигрывали во

времени (по сравнению с "деревьями"). Учитывая повышенные требования к

использованию памяти нами было рпинято решение по окончанию этапа лексического

анализа (т.е. после того как завершится предварительное заполнение таблиц имен

и констант и нам будет вточности известно количество идентификаторов и констант

используемых в транслируемой программе) провести конвертацию поисковой части

хэш-таблиц в непрерывные массивы фиксированной длины. При этом мы увеличиваем

обшее время трансляции за счет времени конвертации, но выигрываем в использовании

К-во Просмотров: 242
Бесплатно скачать Реферат: Язык программирования Норма