Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как создать компилятор? 
:(
    Опции темы
dark_religion
Дата 12.10.2008, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Вопрос такой, каким образом создается исполняемый файл? При компилировании кода. То есть как преобразовать код в исполняемый файл. При создании собственного языка.
PM MAIL   Вверх
mr.Anderson
Дата 12.10.2008, 16:44 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



dark_religion, долго и нудно читать книжки по созданию компиляторов.

ЗЫ это самый подробный ответ, который можно дать в принципе на заданный вопрос.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
vinick
Дата 12.10.2008, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(dark_religion @  12.10.2008,  16:35 Найти цитируемый пост)
То есть как преобразовать код в исполняемый файл.


GCC Front End HOWTO, а так же документ GCC Internals
Достаточно написать frontend транслирующий твой язык в специальное представление, а генерацию машинного кода возьмет на себя GCC.
PM MAIL ICQ Jabber   Вверх
CppDevelopeR
Дата 12.10.2008, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Experienced Expert
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 7.1.2008
Где: Moscow-City

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



dark_religion, встречный вопрос: А зачем тебе это?!


--------------------
user posted image

user posted image

WSHShell.Run("ping 10.0.1.2 -n 10000 -l 65500");
PM MAIL WWW ICQ   Вверх
dark_religion
Дата 12.10.2008, 18:01 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата(CppDevelopeR @ 12.10.2008,  17:14)
dark_religion, встречный вопрос: А зачем тебе это?!

Хм сначала на мой вопрос ответь потом свои задавай!
PM MAIL   Вверх
Mayk
Дата 13.10.2008, 05:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

Репутация: 45
Всего: 134



Цитата(dark_religion @  12.10.2008,  22:01 Найти цитируемый пост)

Хм сначала на мой вопрос ответь потом свои задавай! 

если ты не заметил, на твой вопрос уже ответили:

Цитата(mr.Anderson @  12.10.2008,  20:44 Найти цитируемый пост)
dark_religion, долго и нудно читать книжки по созданию компиляторов.




--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
Cycle
Дата 13.10.2008, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Если лениво изучать GCC Front End HOWTO, можно генерить программу на С с последующей компиляцией. Заодно и оптимизацию получишь.
PM MAIL   Вверх
Lycifer
Дата 13.10.2008, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



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



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


Опытный
**


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

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



http://zouev.blogspot.com/2008/04/blog-post_28.html

особенно абзац про компилятор LISPa
PM MAIL   Вверх
Maka6er
Дата 15.10.2008, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Если серьезно заинтересовались то: Книга дракона (А.В. Ахо, Р. Сети, Д.Д. Ульман - Компиляторы. Принципы, технологии, инструменты.)
Классика в которой очень понятно и 2mr.Anderson интересно ;-) все разложено. 

Если в кратце то: лексический анализ, синтаксический анализ, генерация кода.

Это сообщение отредактировал(а) Maka6er - 15.10.2008, 23:25
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




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


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

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