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.  единообразие (инструкции имеют сходный формат (стандартизированы), как следствие – несложная реализация);
  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

(не помещая переменные в регистры)

Характеристики, описывающие целевую машину:

  1.  набор инструкций вида

op, destination, source

  1.  способы адресации
  •  прямая
  •  регистровая
  •  абсолютная
    •   косвенная

Адресация

Обозначение

Адрес

Добавочная стоимость

  1.  абсолютная
  2.  регистровая
  3.  индексированная
  4.  косвенно-регистровая
  5.  косвенно-индексированная
  6.  константа в команде

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   


генератор промежуточного кода

оптимизатор

генератор исполняемого кода

оптимизатор представляется в промежуточном коде

код целевой машины


 

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

48230. ПРЕДМЕТ І СИСТЕМА ТРУДОВОГО ПРАВА 391 KB
  Будьяка соціальноекономічна формація формувалася зростала й розвивалася на основі праці. Але юридичні науки цікавить не загальне поняття праці а праця як правове явище як міра праці необхідна для творчого зростання людини з урахуванням як особистого так і колективного та суспільного інтересів. Трудове право провідна галузь українського права яка є системою правових норм що регулюють сукупність трудових відносин працівників1 із роботодавцями а також інші відносини що випливають з трудових або тісно пов'язані з ними і...
48231. Конспект лекцій з філософії 753 KB
  Філософія моралі наука про правильні вчинки яка поділялась на монастику тобто етику науку про управління діями окремої людини економіку науку про управління державою. Виходячи із значення яке відіграє філософія як наука в житті та діяльності людини можна виділити поруч із методологічною такі її функції: а світоглядну філософія дозволяє людині осмислити проблеми сенсу людського життя: чому і для чого живе людина Яке її місце та призначення в світі і т. Поняття та типи світогляду Для того щоб зрозуміти значення філософії та її...
48232. КОНСПЕКТ ЛЕКЦІЙ З ЕТИКИ ТА ЕСТЕТИКИ 874.5 KB
  Етика вивчає мораль як особливу сферу життєдіяльності людини аналізує природу структуру та соціальну роль моралі досліджує її походження історичний розвиток теоретично обґрунтовує певну систему моральних поглядів і норм. Терміном етичний мислитель позначав чесноти що стосуються людської вдачі характеру на відміну від чеснот діаноетичних тобто пов'язаних з мисленням розумом людини. По суті з етичною проблематикою ми стикаємося всюди де тільки має місце цілісне духовне філософське осмислення людини як у доарістотелівських...
48233. Конспект лекцій з логіки 682 KB
  Відповідно до нормативних вимог Закону Про освіту і Болонського процесу курс лекцій з дисципліни “Логіка†включає в себе такі теми: предмет структура і призначення дисципліни поняття судження основні закони логіки умовивід логічні основи теорії аргументації доведення тести й самостійні завдання з логіки. Засвоївши курс “Логіка†студенти повинні: Знати: основний зміст усіх тем світоглядний потенціал законів логіки категорій особливості логічного...
48234. Конспект лекцій з релігієзнавства 492 KB
  Релігієзнавство являє собою комплекс суспільних наук, об'єктом вивчення котрих є релігія. Кожна з цих наукових дисциплін, виходячи з специфіки свого предмета, розглядає ту чи іншу сторону цього складного явища, що дозволяє в рамках релігієзнавства представити його цілісну картину
48235. Теорія соціальної роботи 141 KB
  Вступ до соціальної роботи: Підручник для студентів вищих навчальних закладів За ред. Вступ Зв'язки соціальної роботи з іншими дисциплінами мають взаємний характер. Адже здійснення соціальної допомоги передбачає попередній збір інформації її системний аналіз висування гіпотез побудову моделей розвитку.
48236. ЕКОНОМІЧНИЙ АНАЛІЗ (ТЕОРЕТИЧНІ ОСНОВИ) 802.03 KB
  Розглядаються теоретичні основи економічного аналізу, зокрема його значення та роль у системі управління підприємством, предмет та види економічного аналізу, його метод, методика факторного аналізу, характеристика способів детермінованого факторного аналізу, використання економіко-математичних методів в економічному аналізі, методика виявлення і розрахунку резервів, організація та інформаційне забезпечення аналітичних досліджень. Після кожної теми наведені контрольні питання для перевірки засвоєння матеріалу.
48237. ДВИГАТЕЛИ ВНУТРЕННЕГО СГОРАНИЯ 5.35 MB
  Остов двигателя Уравновешивание одноцилиндрового двигателя. Уравновешивание четырехцилиндрового однорядного двигателя Уравновешивание двухцилиндрового Vобразного двигателя.
48238. УКРАЇНСЬКА МОВА ПРОФЕСІЙНОГО СПІЛКУВАННЯ 282.5 KB
  Стилі і норми української літературної мови в професійному спілкуванні Мовне законодавство в Україні Природа і функції мови. Місце української мови серед мов світу. Правовий статус української мови.