Cтраница 1
Таблица литералов ( LT), используемая для запоминания каждого встреченного литерала и присвоенного ему адреса. [1]
Таблица литералов - фаза распределения памяти назначает всем литералам адреса и заводит в матрице элемент, указывающий, что фаза генерации кода должна выделить эту память. [2]
Таблица литералов хранит все литералы, встречающиеся в программе. Идентичные по написанию литералы включаются в таблицу только один раз. Адреса назначаются литералам после завершения первого просмотра исходной программы или по команде LTORG. Записи таблицы литералов имеют переменную длину, зависящую от количества знаков в литерале. [3]
Таблица литералов - создается при лексическом анализе для того, чтобы описать все литералы, используемые в исходной программе. Такие атрибуты, как тип данных или точность, могут быть выведены из самого литерала и записаны при лексическом анализе. [4]
Таблица литералов - содержит новые литералы, которые могут создаваться при определенных типах оптимизации. [5]
Когда заполнение таблицы литералов и таблицы символов-завершено, можно перейти ко второму просмотру ( рис. 3.4), цель которого состоит в вычислении аргументов и в генерировании кодов. Для того чтобы сгенерировать правильный адрес в-команде, нужно знать, какой регистр следует использовать в качестве базового. Для определения смещения нужно знать содержимое этого базового регистра. Конечно, ассемблер не располагает информацией о содержимом базового регистра во время выполнения программы; но значения относительно начала программы ему известны. Поэтому ассемблер вводит в качестве-содержимого его относительное значение. Это значение используется для вычисления смещения. В результате обработки псевдокоманд USING заполняется таблица базовых регистров, приведенная выше. [6]
Таблица идентификаторов, таблица литералов - используются для определения типа данных и адресов переменных ( операнды матрицы) при генерации соответствующих кодов доступа с правильными адресами. [7]
![]() |
Программа на языке ассемблера с использованием литералов. [8] |
Обычно ассемблер формирует таблицу литералов в конце программы. Эта таблица содержит все константы, заданные путем использования литералов. [9]
На рис. 8.23 показаны таблицы идентификаторов и временной памяти, таблица литералов и некоторые элементы матрицы для программы нашего примера. [10]
![]() |
Таблицы символов и литералов, построенные на проходе 1 по программе из. [11] |
Литерал F 5 гнайденный в поле операндов, помещается в таблицу литералов с длиной 4, так как F означает четырехбайто-х вое полное слово. [12]
На этом же просмотре все литералы распознаются и вводятся в таблицу литералов. [13]
Для завершения трансляции выполняются различные хозяйственные задачи, такие, как генерация кодов для литералов из таблицы литералов и выдача таблицы глобальных символов. [14]
После этого данная фаза компиляции должна поместить информацию, необходимую для фазы генерации кода, в таблицу идентификаторов, в таблицу литералов и в матрицу. [15]