Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
1

Наличие синтаксического и семантического анализаторов в компиляторе

02.09.2015, 20:05. Показов 1042. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, объясните пожалуйста, для чего нужны синтаксический и семантический анализаторы в структуре компилятора? Привидите примеры.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.09.2015, 20:05
Ответы с готовыми решениями:

Взаимодействие лексического и синтаксического анализаторов в структуре компилятора
Добрый день, обоснуйте пожалуйста наличие и взаимодействие лексического и синтаксического...

Подойдет ли Delphi для написания программы синтаксического и семантического анализа форума?
Задали написать программу которая осуществляет синтаксический и семантический анализ форума, т.е....

Насчет анализаторов типа промолаб
есть две страницы, моя и конкурентов моя по запросу "отдых в подмосковье" стоит на 20-ом месте, их...

Принципы построения анализаторов качества молока
Помогите пожалуйста не могу сделать презентацию)

6
Ушел с форума
Автор FAQ
16279 / 7604 / 1065
Регистрация: 11.11.2010
Сообщений: 13,617
03.09.2015, 03:34 2
Ferrari F1,
  1. Ахо А.В., Сети Р., Ульман Д.Д. Компиляторы: принципы, технологии и инструменты.
  2. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. (Том 1. Синтаксический анализ).
  3. Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. (Том 2. Компиляция).
1
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
03.09.2015, 17:46  [ТС] 3
Mikl___, можно попросить Вас ответить на вопрос так, как если бы Вам задал этот вопрос преподаватель в ВУЗе.
Я не собираюсь разрабатывать компилятор, я бы хотел лишь услышать краткий ответ.
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
04.09.2015, 10:03 4
Креншоу, Джек 'Давайте, создадим компилятор!'
1
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
05.09.2015, 01:26 5
Цитата Сообщение от Ferrari F1 Посмотреть сообщение
А форум разве не ради таких целей задумывался? (для получения ответов на вопросы)
Для получения ответов на эти вопросы задумывались книги, которые тебе порекомендовали. Там ты ответы и найдешь.
1
805 / 532 / 158
Регистрация: 27.01.2015
Сообщений: 3,017
Записей в блоге: 1
05.09.2015, 07:31  [ТС] 6
Цитата Сообщение от Ethereal Посмотреть сообщение
Ну, чисто излагая содержание обширного вопроса
У нас была всего лишь одна единственная лекция (последняя в семестре, заканчивал 1-ый курс) по ЯП в универе, на которой нам прочли краткое введение в структуру компилятора (т.е. все было рассказано очень поверхностно). Рассказали, что такое синтаксический, семантический анализатор.
Я не прошу объяснять мне все очень детально, лишь в двух словах рассказать:
1) Для чего нужен синтаксический анализатор в компиляторе
2) Для чего нужен семантический анализатор в компиляторе

Не буду же я ради одной лекции читать целые тома книг, т.к. нас всего лишь знакомили с понятием компилятора и его структурой.
0
6770 / 2739 / 384
Регистрация: 17.02.2013
Сообщений: 4,047
05.09.2015, 12:27 7
Да тебе бы и ответили бы, наверное, но
"Приведите примеры"
в твоем первом сообщении резко изменило отношение к твоему вопросу.
Одно дело просто спросить. Другое - использовать повелительное наклонение в вопросе.
На повелительное наклонение первая и непосредственная реакция "дитынах".

Добавлено через 12 минут
Синтаксис - это формальные правила грамматики. Ну точно как в русском языке.
Проверить синтаксис - это как в школьном сочинении проверить правильно ли расставлены
запятые. Не обращая внимания на смысл написанного. В компиляторе задача синтаксического
анализатора заорать в сторону программиста по поводу формальных грамматических ошибок
и на этом закончить компиляцию. Пусть исправляет. Ибо если формальная грамматика языка
программирования не соблюдена, то и нечего искать в написанном смысл.

Семантика - это от слова смысл. Анализ семантики - это анализ смысла написанного.
Начинается только если синтаксически все верно. И делается для того, чтобы
порождать машинный код согласно смыслу написанного.

Создатели компиляторов таким высоким понятием как "семантический анализ" не мыслят.
Это чисто теоретическое понятие. Они как-то пишут компиляторы без таких высоких слов.
А вот анализ синтаксиса - это нечто весьма практическое. Ибо если формальные правила
грамматики языка не соблюдены, то нечего дальше компилировать. Надо уже об ошибке кричать.

Добавлено через 11 минут
Задача разбора смысла написанного синтаксически некорректно практически нерешаема,
потому-что будет уже уровня искусственного интеллекта. Это человек может легко
допереть "да у тебя тут запятая пропущена, а в остальном все верно". А написать
программу, которая умела бы так допирать архисложно. Поэтому задуча упрощается -
сначала проверяется синтаксис и только при безупречном синтаксисе ищется семантика
в написанном.

Добавлено через 4 минуты
Но я книжек про компиляторы не читал. Вот писать компиляторы приходилось. Вообще, у теоретиков
всегда может быть чуть иное мнение, чем у практиков. Теоретики - они такие теоретики.
Поэтому не факт, что то, что я думаю - это есть то, что думает твой преподаватель.
2
05.09.2015, 12:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2015, 12:27
Помогаю со студенческими работами здесь

Скоростной промежуточный кеш для лог. анализаторов.
Есть идея сделать замедлитель для дешевых низкоскоростных логических анализаторов. Скоростной...

Построение лексического анализатора с использованием генератора лексических анализаторов Lex
День добрый. Подскажите пожалуйста, в чем ошибка? (( В архиве Lex, LexLib. unit Unit1;...

Создание семантического ядра
Здравствуйте. Есть лендинг, которому надо создать семантическое ядро, SEO я вообще никогда не...

Составление семантического ядра
День добрый уважаемые форумчане. Мне нужно составить семантическое ядро для большого проекта, с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru