29361

Генерация объектного кода для тетрадной формы представления программ

Доклад

Информатика, кибернетика и программирование

последовательность команд загруженных в фиксированные ячейки памяти2. последовательность перемещенных машинных команд3. Предположим что сумматор может выполнять 4 арифметические операции а в целом система команд также включает еще 2 команды: загрузки сумматора из памяти и сохранение результатов в память.Систему команд такой машины можно представить следующим образом:При выполнении любой из первых двух команд содержимое источника копируется в приемник а при выполнении оставшихся 4 команд содержимое ячейки памяти не изменяется.

Английский

2013-08-21

99.5 KB

0 чел.

29) Генерация объектного кода для тетрадной формы представления программ.

Существует 3 формы объектного кода
1. последовательность команд, загруженных в фиксированные ячейки памяти
2. последовательность перемещенных машинных команд
3. программа на языке ассемблера
Объектный код в компиляторах (К) может формироваться как в двоичном виде, т.е. в виде кодов (1,2), так и в символьном виде (на языке ассемблера) (3). Пусть объектный код формируется в символьном виде. Чтобы показать процесс генерации кода, можно рассмотреть теоретическую вычислительную машину с одним сумматором и неограниченной памятью. Предположим, что сумматор может выполнять 4 арифметические операции (+,-,*,/), а в целом система команд также включает еще 2 команды: загрузки сумматора из памяти и сохранение результатов в память.
Для упрощения будем считать, что 
объектная программа формируется в символьном виде, а каждая переменная представляется своим именем, а не указателем, на соотв. ячейку памяти.
Систему команд такой машины можно представить следующим образом:

При выполнении любой из первых двух команд содержимое источника копируется в приемник, а при выполнении оставшихся 4 команд, содержимое ячейки памяти не изменяется.
Генерация кода осуществляется для программы, представленной в некоторой внутренней форме, наиболее удобной из которых для генерации кода является 
список тетрад.

Список тетрад является наиболее удобной формой для генерации кода. Это объясняется тем, что тетрады в списке следуют в том порядке, в котором они должны выполняться, поэтому простейший алгоритм генерации кода заключается в поочередной замене каждой тетрады стандартной последовательностью машинных команд. Для рассматриваемых типов команд, такие последовательности для некоторых типов тетрад показаны в таблице.

Покажем на прмере как выполняется генерация кода рассмотренным методом

A:= (B+D+A)* (D+B+C)
Для него исходный список тетрад будет иметь следующий вид:

(+,B,D,T1)
(+,T1,A,T2)
(+,D,B,T3)
(+,T3,C,T4)
(*,T2,T4,T5)
(:=,T5, ,A).
После машинно-независимой оптимизации представленный список тетрад будет иметь следующий вид:

(+,B,D,T1) (1)
(+,A,T1,T2) (2)
(+,C,T1,T4) (3)
(*,T2,T4,T5) (4)
(:=,T5, ,A).
(5)

Полученный код является избыточным , т.к. содержит команды, являющиеся дублирующими отдельный действия по записи и чтению данных в памяти. Это объясняется тем, что каждая тетрада реализуется стандартной универсальной последовательностью команд, не учитывающая контекст.


 

А также другие работы, которые могут Вас заинтересовать

72802. Теорія держави та права: Методичні рекомендації 145 KB
  Перед виконанням письмової роботи студент має уважно ознайомитися з темою і планом, запропонованим кафедрою для її розкриття, та практичними завданнями (задачами), які необхідно виконати (розв’язати). Після цього необхідно вивчити методичні рекомендації щодо виконання курсової...
72804. Кривые выживания. Экологическая стратегия выживания. Регуляция численности популяции 77.5 KB
  Выделяют три типа основных кривых выживания рис. Кривая I типа когда на протяжении всей жизни смертность ничтожно мала резко возрастая в конце ее характерна для насекомых которые обычно гибнут после кладки яиц ее и называют кривой дрозофилы к ней приближаются кривые выживания...
72805. Экологические абиотические факторы среды: климатические, географические, гидрологические, эдафические (почвенные) 62 KB
  Статические и динамические показатели популяции Популяция это элементарная группировка организмов определенного вида обладающая всеми необходимыми условиями для поддержания своей численности необозримо длительное время в постоянно изменяющихся условиях среды.
72806. Предмет изучения, задачи и методы экологи 72.5 KB
  Любой организм в природе испытывает на себе воздействие самых разнообразных компонентов внешней среды. Факторы среды экологические факторы разнообразны имеют разную природу и специфику действия. Абиотические факторы неживой природы: а климатические условия освещенности температурный режим и т.
72808. Гипотеза образования Земли и ее внутреннее строение 72.5 KB
  Гипотеза образования Земли и ее внутреннее строение. лет назад из холодного газа пылевого облака вследствие взрыва Земли 1го поколения. Тяжёлые элементы опустились вниз и образовали ядро Земли. В определённый момент размеры Земли стали такие что газы выделявшиеся на поверхности из недр стали удерживаться и образовалась атмосфера.