20620

Семантический анализ

Лекция

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

Генерация промежуточного кода Основные формы промежуточного кода6 Для примитивных трансляторов используется синтаксическое дерево или DAG Постфиксная запись Трехадресный код: x:=y op z Пример: синтаксическое дерево t1=c t2=bt1 t4=c t5=bt4 t3=t5t2 a=t3 DAG t1=c t2=bt1 t3=t2t2 a=t3 постфиксная запись Трехадресный код – представляет собой выражение типа Типы трехадресных конструкций инструкции присвоения где op – арифметическая или логическая операция где op – унарная операция инструкции копирования инструкции...

Русский

2013-07-31

144.5 KB

1 чел.

Лекция № 7.

Семантический анализ

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

  1.  проверка типов.

На этом этапе проверяется совместимость операторов и операндов.

Существуют фундаментальные и создаваемые типы.

Проверка типов выполняется в два этапа:

  •  статическая – производится на этапе семантического анализа.
  •  динамическая – производится на этапе выполнения программы.

  1.  проверка управления.
  •  Проверка согласованность команд управления
  •  Вложенность команд управления и т.п.
  1.  проверка единственности.

Переменные, функции, … с одинаковыми именами.

4. Генерация  промежуточного кода

Основные формы промежуточного кода6

  •  Для примитивных трансляторов используется синтаксическое дерево или DAG
  •  Постфиксная запись
  •  Трехадресный код: x:=y op z

Пример:

  1.   синтаксическое дерево

t1=-c

t2=b*t1

t4=-c

t5=b*t4

t3=t5+t2

a=t3

  1.   DAG

t1=-c

t2=b*t1

t3=t2+t2

a=t3

  1.  постфиксная запись

Трехадресный код – представляет собой выражение типа

Типы трехадресных конструкций

  1.  инструкции присвоения
  •   , где opарифметическая или логическая операция
  •   , где op – унарная операция
  1.  инструкции копирования

  1.  инструкции безусловного перехода

, где R метка

  1.  инструкции условного перехода

При представлении программ в виде трехадресного кода, каждой инструкция может быть сопоставлена метка, которая, как правило, сопоставляется с индексом инструкций в массиве инструкций.

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

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

Формы представления:

  1.  четверки
    •  первое поле отводится под оператор
    •  два поля отводятся под операнды
    •  четвертое поле отводится под результат

Op

Arg1

Arg2

Res

(0)

-

c

t1

(1)

*

b

t1

t2

(2)

-

c

t4

(3)

*

b

t4

t5

(4)

+

t5

t2

t3

(5)

:=

t3

a

  1.  тройки (отсутствует последний столбец из четверок)
  •  первое поле отводится под оператор
  •  второе поле отводится под первый операнд
  •  третье поле отводится под второй операнд

Op

Arg1

Arg2

(0)

-

c

(1)

*

b

(0)

(2)

-

c

(3)

*

b

(2)

(4)

+

(1)

(3)

(5)

:=

a

(4)

  1.  косвенные тройки (вместо списка троек используется список указателей на тройки (р)). В сравнении с четверками нет лишних переменных, что позволяет экономить память.

Op

Arg1

Arg2

P

(0)

-

c

(10)

(1)

*

b

(0)

(11)

(2)

-

c

(12)

(3)

*

b

(2)

(13)

(4)

+

(1)

(3)

(14)

(5)

:=

a

(4)

(15)

Пример 1.

Построить синтаксическое дерево, постфиксную запись, трехадресный код в виде троек и четверок.

Синтаксическое дерево:

Постфиксная запись:

Трехадресный код:

(0)

+

b

c

t1

(1)

-

t1

t2

(2)

*

a

t2

t3

(0)

+

b

c

(1)

-

(0)

(2)

*

a

(1)

Пример 2.

Синтаксическое дерево:

Постфиксная запись: cd+a+ab+-cd+*+

Трехадресный код:

(0)

+

a

b

t1

(1)

-

t1

t2

(2)

+

d

c

t3

(3)

*

t2

t3

t4

(4)

+

t1

c

t5

(5)

+

t4

t5

t6

(0)

+

a

b

(1)

-

(0)

(2)

+

d

c

(3)

*

(1)

(2)

(4)

+

(0)

c

(5)

+

(3)

(4)


 

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

31624. ПАТОГЕННА ДІЯ ФАКТОРІВ ЗОВНІШНЬОГО СЕРЕДОВИЩА 77.5 KB
  Крашсиндром це патологічний процес який розвивається в потерпілих у результаті тривалого 48 г і більше роздавлювання м’яких тканин кінцівок уламками зруйнованих будинків споруджень брилами ґрунту при обвалах у шахтах і ін. Головною ознакою стадії декомпенсації є зниження температури ядра тіла що закономірно приводить: а до зменшення швидкості всіх біохімічних реакцій в організмі у тому числі і процесів біологічного окислювання; б при цьому різко зменшується споживання кисню й утворення АТФ у клітинах; в дефіцит...
31625. ПАТОЛОГІЧНА ФІЗІОЛОГІЯ НИРОК 85 KB
  Ниркову недостатність класифікують наступним чином: 1 У залежності від причин розвитку недостатність нирок може бути: а преренальною порушення кровопостачання нирок б ренальною порушення функції клубочків клубочкової фільтрації і ниркових канальців канальцевої реабсорбції і секреції в постренальною порушення що виникають на шляху відтоку сечі і г аренальною порушення обумовлені відсутністю нирок. Причиною цього є перешкоди відтоку фільтрату чи сечі при ушкодженні канальців закупорка канальців некротчними...
31626. ПАТОЛОГІЯ ВІНЦЕВОГО КРОВООБІГУ 77 KB
  Перш ніж розглянути коронарну недостатність слід зупинитися на особливостях вінцевого кровообігу який характеризується: 1 Високим рівнем екстракції кисню в капілярах серця 7075 у головному мозку 25 у скелетних м’язах і печінці 20 що пояснюється значною довжиною капілярного русла серця і у зв’язку з цим тривалим часом контакту крові із стінкою капілярів. Тому при збільшенні потреби серця в О2 вона не може бути забезпечена шляхом збільшення екстракції О2 як у скелетних м’язах оскільки остання і так є максимально можливою в...
31627. ПАТОЛОГІЯ ВОДНО-ЕЛЕКТРОЛІТНОГО ОБМІНУ 86.5 KB
  Внутрішній обмін води залежить від збалансованості між поступленням рідини в організм і її виділенням за один і той же час. N K C Mg ВКС 100 1600 10 130 МКС 1480 45 20 10 ВСС 1420 40 25 15 Із таблиці бачимо що основним електролітом плазми і міжклітинної рідини є N а внутрішньоклітинної рідини – K і Mg2 що забезпечує осмотичний тиск всередині клітин. Дегідратація – зменшення об’єму позаклітинної рідини в організмі коли втрата води переважає над поступленням і виникає негативний водний баланс. Ізоосмолярна дегідратація –...
31628. ПАТОЛОГІЯ ГІПОТАЛАМО-ГІПОФІЗАРНОЇ СИСТЕМИ, ГОНАД і ЕПІФІЗА 89 KB
  Порушення функції гіпоталамоаденогіпофізарної системи. Патогенна дія факторів зовнішнього і внутрішнього середовища негативні емоції біль психічні порушення і т. Механізми виникнення дисфункції гіпоталамоаденогіпофізарної системи: 1 Порушення центральної регуляції нейроендокринних зон гіпоталамуса. 2 Порушення утворення і виділення релізінггормонів клітинами гіпоталамусу.
31629. ПАТОЛОГІЯ ЕНДОКРИННОЇ СИСТЕМИ 80.5 KB
  За функціональних ефектами гормони поділяють на: а ефекторні діють безпосередньо на органимішені; б тропні регулюють синтез ефекторних гормонів; в релізінггормони регулюють синтез і секрецію тропних гормонів. Основні властивості гормонів: 1 утворюються спеціалізованими клітинами ендокринних залоз; 2 секретуються в кров або інші циркулюючі рідини; 3 характеризуються специфічністю впливу який пов’язаний із існуванням “клітинмішеней†які мають особливі рецептори до конкретного гормону; 4 володіють високою біологічною...
31630. ПАТОЛОГІЯ ЗОВНІШНЬОГО ДИХАННЯ 78.5 KB
  Дихальну недостатність класифікують: 1 За клінічним перебігом розрізняють: а гостру і б хронічну недостатність дихання. 2 За клінічними проявами недостатність дихання може бути: а компенсованою і б декомпенсованою. Вентиляційна недостатність дихання виникає внаслідок порушень обміну газів між атмосферним повітрям і альвеолами легень тобто в результаті порушень легеневої вентиляції гіповентиляції.
31631. ПАТОЛОГІЯ НАДНИРНИКІВ 73 KB
  Ці пептиди володіють тропною дією на клубочкову зону кори наднирників викликаючи надходження альдостерону в кров. Виділяють 3 ефекти АКТГ при дії його на пучкову зону наднирників: 1 гострий ефект протягом декількох хвилин обумовлюється зв’язуванням холестерину з цитохромом P450 і посиленням трансляції наявної інформаційної РНК що викликає істотне збільшення утворення стероїдів; 2 підгострий ефект через десятки годин обумовлюється посиленням процесів транскрипції генів які кодують структуру ферментів стероїдогенезу що проявляється...
31632. ПАТОЛОГІЯ ЩИТОПОДІБНОЇ та ПРИЩИТОПОДІБНИХ ЗАЛОЗ 80 KB
  ТТГ діючи на щитовидну залозу викликає наступні ефекти: а підсилює захоплення і включення йоду в органічні сполуки; б підсилює протеоліз депонованого тиреоглобуліну; в підсилює секрецію Т3 і Т4; г при тривалій дії викликає гіпертрофію і гіперплазію щитоподібної залози. Порушення функції щитоподібної залози. Первинний гіпотиреоз зустрічається при: а аутоімунному тиреоїдиті Хашімото б хронічному фіброзноінвазивному тиреоїдиті Ріделя які супроводжуються дефектами синтезу тиреоїдних гормонів в тиреоїдектомії г лікуванні...