20621
Этап генерация кода исполняемой машины
Лекция
Коммуникация, связь, радиоэлектроника и цифровые приборы
1 a:=bc d:=ac mov R0 b add R0 c → mov a R0 mov R0 b add R0 c mov d R0 2 t:=ab t:=tc t:=t d mov R0 a add R0 b mov R1 c mul R0 R1 mov R1 d div R0 R1 mov t R0 не помещая переменные в регистры Характеристики описывающие целевую машину: набор инструкций вида op destination source способы адресации прямая регистровая абсолютная косвенная Адресация Обозначение Адрес Добавочная стоимость абсолютная регистровая индексированная косвеннорегистровая косвенноиндексированная константа в команде M R CR R CR C M...
Русский
2013-07-31
58 KB
0 чел.
Лекция №8
Этап генерация кода исполняемой машины
Задача: получить исполняемый код.
Свойства исполняемого кода:
1) корректность (процессор должен понимать полученный код);
2) эффективность (код должен быть получен оптимальным путем).
На вход генератора исполняемого кода поступает оптимизированное представление промежуточного года.
Требования к набору инструкций целевой машины:
Пример 1.
Организация трехадресной инструкции на языке ассемблера.
1)
a:=b+c
d:=a+c
mov R0, b
add R0, c →
mov a, R0
mov R0, b
add R0, c
mov d, R0
2)
t:=a+b
t:=t*c
t:=t/d
mov R0, a
add R0, b
mov R1, c
mul R0, R1
mov R1, d
div R0, R1
mov t, R0
(не помещая переменные в регистры)
Характеристики, описывающие целевую машину:
op, destination, source
Адресация |
Обозначение |
Адрес |
Добавочная стоимость |
|
M R C(R) *R *C(R) #C |
M R C+R (R) (C+(R)) const |
1 0 1 0 1 1 |
Стоимость инструкции определяется как 1+добавочная стоимость.
Пример: построить код целевой машины, доступны 3 регистра R0,R1,R2.
x:= a/(b+c)-d*(e+f)
трехадресный код:
t1:=e+f
t1:=d*t1
t2:=b+c
t2:=a/t2
t1:=t2-t1
x:=t1
№ |
Op |
Arg1 |
Arg2 |
(0) |
+ |
e |
f |
(1) |
+ |
d |
(0) |
(2) |
+ |
b |
C |
(3) |
/ |
a |
(2) |
(4) |
- |
(3) |
(1) |
(5) |
:= |
x |
(4) |
Посчитать стоимость набора инструкций:
MOV R0,е 2
ADD R0,f 2
MOV R1,b 2
ADD R1,c 2
MUL R0,d 1
MOV R2,a 2
DIV R2,R1 1
SUB R2,R0 1
MOV x,R2 2
генератор промежуточного кода
оптимизатор
генератор исполняемого кода
оптимизатор представляется в промежуточном коде
код целевой машины
А также другие работы, которые могут Вас заинтересовать | |||
7769. | Педагогика. Краткий терминологический словарь | 52 KB | |
Краткий терминологический словарь Активные методы обучения - это методы обучения, основанные на самостоятельной творческой деятельности учащихся по разрешению задач и ситуаций. Активные методы обучения повышают степень мотивации и эм... | |||
7770. | Свойства твёрдых тел, жидкостей и газов | 87 KB | |
Тема: Свойства твёрдых тел, жидкостей и газов. Цель: Закрепить знания о состояниях тел. Задачи: Рассмотреть свойства твёрдых тел, жидкостей и газов. Сформировать представления о деформации, упругости, пластичности. Ход урока. Орган... | |||
7771. | Аналіз статті. Дубовик С.Г. Мовний етикет у професійній культурі педагога | 36 KB | |
Аналіз статті. Дубовик С.Г. Мовний етикет у професійній культурі педагога Перебудова вищої школи передбачає виведення вищої освіти на світовий рівень, а тому розглядає багато проблем, серед яких важливе місце належить проблемі формування висококвалі... | |||
7772. | Аналіз статті: Трохимець О.І. Розвиток вищої освіти України в умовах глобалізації | 16.58 KB | |
Аналіз статті: Трохимець О.І.Розвиток вищої освіти України в умовах глобалізації Сучасний етап розвитку світової і вітчизняної економіки передбачає створення суспільства, що базується на знаннях, де соціальне й економічне благополуччя країни в... | |||
7773. | Загальні основи педагогіки вищої школи. організація педагогічного процесу та зміст освіти у вищій школі | 533 KB | |
Загальні основи педагогіки вищої школи. організація педагогічного процесу та зміст освіти у вищій школі Тема 1. Загальні основи педагогіки вищої школи. система вищої освіти в Україні і закордонні План вивчення теми: Предмет... | |||
7774. | Воспитание в Древнем мире. Спарта и Афины | 30 KB | |
Воспитание в Древнем мире. Спарта и Афины. Обучение и воспитание в Афинах. Утвердить законом тот факт, что ребенка обязаны обучать родители, в Афинах не догадались. Собственного говоря - этого и не требовалось. Общественное мнение, неписанные законы... | |||
7775. | Воспитание в Киевской Руси | 31 KB | |
Воспитание в Киевской Руси Хотелось бы пока остановиться на двух великих произведениях Древней Руси: летопись Повесть временных лет и Поучение Владимира Мономаха. Повесть временных лет определяет место славян и, в частности, русского народа, среди н... | |||
7776. | Воспитание в первобытном обществе. Педагогика древних славян | 33.5 KB | |
Воспитание в первобытном обществе. Педагогика древних славян Воспитание как особый вид человеческой деятельности появилось в первобытном обществе около 40 - 35 тысяч лет назад. К этому периоду на Земле появляется разумный человек современног... | |||
7777. | Воспитание в период раннего феодализма | 27.5 KB | |
Воспитание в период раннего феодализма. В феодальном обществе господствующими сословиями были светские феодалы и духовенство, владевшие всей землей и эксплуатировавшие подвластных им крестьян. Идеологическим оплотом господствующих групп феодального ... | |||