сист пр об ч 3 (Лекции по СПО), страница 5

2018-01-12СтудИзба

Описание файла

Файл "сист пр об ч 3" внутри архива находится в следующих папках: Лекции по СПО, сис пр об. Документ из архива "Лекции по СПО", который расположен в категории "". Всё это находится в предмете "операционные системы" из 7 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "операционные системы" в общих файлах.

Онлайн просмотр документа "сист пр об ч 3"

Текст 5 страницы из документа "сист пр об ч 3"

Фаза интерпретации — обычно набор программ, которые вы­зываются каждый раз, когда при синтаксическом анализе вы­является та или иная конструкция языка. Назначение этих про­грамм (называемых программами интерпретации) состоит в создании промежуточной формы исходной программы и в до­бавлении определенной информации в таблицу идентификаторов.

Отделение синтаксической фазы от фазы интерпретации является чисто логическим. Первая из них распознает синтак­сические конструкции (т. е. фразы, имеющие определенный смысл, например операторы или предложения), в то время как вторая интерпретирует точный смысл содержимого матрицы или таблицы идентификаторов. В действительности очень трудно определить, где кончается процесс распознавания синтаксиче­ской конструкции и начинается интерпретация ее смыслового значения. Другими словами, размер фразы, которой необходимо придать значение, может быть произвольным.

Это хорошо может быть проиллюстрировано на примере раз­бора арифметических выражений. В качестве отдельной синтак-

сической единицы можно рассматривать все выражение цели­ком. Однако его распознавание и грамматический разбор яв­ляются сложной задачей как для синтаксического анализа, так и для программ интерпретации. В то же время любое подвыра­жение (например, два операнда и операция) также может рас­сматриваться как отдельная синтаксическая единица, а значит, и распознаваться при выполнении фазы синтаксического анали­за. В первом случае программа интерпретации должна создавать элементы матрицы для всего выражения, а во втором случае программы интерпретации будут создавать только один элемент для каждого подвыражения. Выбор может определяться сравне­нием объема вычислений на синтаксической фазе и в програм­мах интерпретации.

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

8.2.3.1. Базы данных

Таблица стандартных символов

Стек — содержит единицы языка, появляющиеся при выполне­нии фаз синтаксического анализа и интерпретации. Таблица идентификаторов — инициируется лексическим анали­зом с целью полного описания всех идентификаторов, имеющих­ся в исходной программе. Лексическая фаза помещает иденти­фикатор (или указатель на соответствующую строку символов) в поле имени. Фаза интерпретации добавляет все остальные атрибуты. Фаза распределения памяти помещает адрес. Эта ин­формация используется в более поздних фазах при распределе­нии памяти и при генерации кода, обеспечивающего доступ к памяти, соответствующей данному элементу таблицы. Большин­ство атрибутов определяется во время разбора оператора-декла­рации. Ниже представлен отдельный элемент таблицы иденти­фикаторов:

Имя| Основание| Формат| Точность| Тип памяти| Границы массива|

Положение в структуре| Литеральное значение| Положение в блоке |

| | Адрес

Другие

Матрица — первая промежуточная форма исходной программы. Существуют две причины, по которым имеет смысл заводить та­кую матрицу: 1) первые четыре фазы компилятора могут быть сделаны машинно-независимыми; 2) это позволяет проводить машинно-независимую оптимизацию программы перед фазой генерации кода. Простая форма отдельного элемента матрицы предусматривает три поля, первое из которых содержит стан­дартный символ, представляющий либо терминальный символ, либо знак операции, остальные два элемента содержат стандарт­ные символы аргументов. Фаза генерации кода использует эту матрицу, производя соответствующий объектный код.

Могут существовать также дополнительные поля, предназна­ченные для связи в цепочку отдельных элементов матрицы, что может использоваться для целей оптимизации при добавлении или вычеркивании элементов.

Стандартный Стандартный Стандартный, Соединение

с имвол символ символ в цепочку

Операция Операнд 1 Операнд 2.

Хотя все элементы в матрице являются стандартными симво- лами, для ясности в наших примерах мы будем показывать ка­ждый символ в его первоначальном виде. Некоторые операции в матрице не имеют прямых аналогов как в исходном, так и в машинном языке. Например, составной оператор IF ТНЕN ... ... ЕLSЕ может транслироваться в несколько элементов матри­цы, каждый из которых в свою очередь транслируется в не­сколько машинных команд.

Операнды матрицы являются стандартными символами типа
IDN, LIT или ТRМ, четвертой формой является МТХ. Стандарт­ный символ

I МТХ I n I

обозначает результат выполнения операции n-го элемента ма­трицы и указывает на соответствующий элемент в области вре­менной памяти строки таблицы идентификаторов.

Таблица временной памяти (может использоваться как часть таблицы идентификаторов). Фаза интерпретации вносит в таб­лицу временной памяти всю информацию о значениях МТХ-символов, т. е. атрибуты временных вычислений, полученных из строк матрицы, таких, как тип данных, точность, оператор ис­ходной программы, в котором он используется, и т. д. Эта ин­формация нужна при распределении памяти и генерации кодов

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
426
Средний доход
с одного платного файла
Обучение Подробнее