Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Свой компилятор для Паскаля 
:(
    Опции темы
tht
  Дата 31.5.2010, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 10.5.2006

Репутация: нет
Всего: 1



всем привет. у меня есть такая мысль, посмотреть что это такое - компилятор для паскаля собственными руками. причем есть мысль что делать этот компилятор на другом компиляторе и тоже на паскале. но не на ассемблере. я же думаю что это возможно.
 у кого какие мысли будут по этому поводу ?
PM MAIL   Вверх
bartram
Дата 31.5.2010, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: 3
Всего: 29



tht, конечная цель какая?


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
tht
Дата 31.5.2010, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 10.5.2006

Репутация: нет
Всего: 1



создать рабочий компилятор паскаля для начала для винды...

Это сообщение отредактировал(а) tht - 31.5.2010, 16:49
PM MAIL   Вверх
Mikel
Дата 31.5.2010, 16:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 882
Регистрация: 30.3.2002
Где: Саратов

Репутация: нет
Всего: 2



Цитата(tht @ 31.5.2010,  13:49)
создать рабочий компилятор паскаля для начала для винды...

Это не цель, это этап smile


--------------------
...so remember, it's better to burn out than to fade away
PM MAIL ICQ   Вверх
Фантом
Дата 31.5.2010, 17:41 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008

Репутация: нет
Всего: 49



Цитата(tht @  31.5.2010,  15:42 Найти цитируемый пост)
я же думаю что это возможно.
 у кого какие мысли будут по этому поводу ? 

Судя по форме вопроса, пока это невозможно.  smile 
PM   Вверх
Qu1nt
Дата 31.5.2010, 19:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 602
Регистрация: 13.1.2007

Репутация: 5
Всего: 50



Следует учесть, что задача нетривиальна и съедает много человеко-часов. Действительно много smile
Примерный алгоритм работы компилятора:
  • Лексический анализ
    Основная задача разбить входной текст, состоящий из последовательности символов, на последовательность лексем.
    Результат:
    • Таблица лексем
  • Синтаксический анализ
    Процесс, который определяет, принадлежит ли некоторая последовательность лексем языку, порождаемому грамматикой.
    Результат:
    • Абстрактное синтаксическое дерево
  • Семантический анализ
    Ясно, что текст программы, точно соответствующий грамматике и правильно разобранный на фазе синтаксического анализа, может содержать множество ошибок. Естественно эти ошибки нельзя описать в рамках грамматики, так как они являются контекстным.
    Результат:
    • Таблица символов
  • Оптимизация
    Не обязательный, но важный этап компиляции. 
    Результат:
    • Удаление недосягаемого кода и неиспользуемых присвоений
    • Низкоуровневая оптимизация
  • Генерация кода
    Построение для программы на входном языке эквивалентной машинной программы.
    Хотите создавать приложения под Windows? Portable Executable для Вас. 
    Результат:
    • Скомпилированная программа.
Грамматика Pascal
Тут можно найти некие бесполезные исходники.

Это сообщение отредактировал(а) Qu1nt - 31.5.2010, 20:25
PM MAIL   Вверх
CodeMonkey
Дата 1.6.2010, 00:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 16
Всего: 89





--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.