![]() |
Как написать свой компилятор!!!
Форумчани, всем привет :) Вот возник такой вопрос...
Допустим я хочу создать свою программу которая будет генерировать код и выводить это все в 3D окне...Чтото типа Blitz3D, как мне это сделать? я даже не знаю с чего начать, подскажите плиз... :) |
Ответ: Как написать свой компилятор!!!
to maxturbo:
Для начала, скачай откуда-нибудь книгу по теории конечных автоматов. Вещь, конечно, не из самых простых, но, если освоишь, то сможешь без проблем (хотя как сказать :)) написать свой компилятор или, для начала, хотя бы интерпретатор. А вообще: писать свой компилятор/интерпретатор - это очень интересная и, однако, трудная вещь! Знаю не по наслышке: сам год назад в универе интерпретатор писал. Сдал на 4-ку! ;) |
Ответ: Как написать свой компилятор!!!
Еще могу посоветовать почитать тебе вот такую книжку:
"Компиляторы: принципы, технологии, инструменты", Альфред Ахо, Рави Сети, Джеффри Ульман. Собственно, я по ней писал свой интерпретатор. Книжка довольно проста в освоении, а это самое главное. :) |
Ответ: Как написать свой компилятор!!!
|
Ответ: Как написать свой компилятор!!!
Ну я вообще на Delphi хочу его написать, это реально?
|
Ответ: Как написать свой компилятор!!!
Можно и на бейсике. Ко всему прочему если уж писать реальный компилятор (не транслятор в асм или типа того) то вали на интел и ищи там описание архитектуры х86 (вроде бы 5 таких доков по 500 страниц), и кури до просветления (в частности приложения 2А и 2В, там непосредственно даны коды асм команд и форма их записи на машинном языке).
|
Ответ: Как написать свой компилятор!!!
вот еще "с чего начать" обсуждение
http://forum.boolean.name/showthread.php?t=7772 PS: интерпретатор и компилятор отличаются только последней стадией - кодогенерацией. |
Ответ: Как написать свой компилятор!!!
Цитата:
|
Ответ: Как написать свой компилятор!!!
Эх, я свой на блице писал, дошёл до работы с текстом (вывод, очистка экрана и т.п.) и ожидания клавиши :-)
|
Ответ: Как написать свой компилятор!!!
Цитата:
3. кодогенерация вход: АСТ выход: либо машинный код, либо байт-код для виртуальной машины, либо список непосредственных вызовов = интерпретация. |
Ответ: Как написать свой компилятор!!!
без обид и приколов - в твоём случае абсолютно нереально (пока) написать компилятор, даже левый, который будет всё перегонять на другой язык.
главный показатель - возникновение такого вопроса. |
Ответ: Как написать свой компилятор!!!
Еще такой вопрос читал вот эту статью http://www.gamedev.ru/code/articles/?id=4229 и возник вопрос, а на чем он там писал? вот у меня допустим есть MicrosoftVisual Studio 2008 могу ли я на этой программе изучить этот пример? Да и еще для меня много чего непонятного есть, к примеру что такое lex и flex? пытался найти описание но все на буржуйском языке...Помогите разобраться во всем этом :) Я так понимаю компилятор это такая программка каторая будет гинерировать твой код, тоесть пишем программу которая будет считывать все дальнейшие функции твоего кода? если да, то потом как допустим этот компилятор применить к моему коду? тоесть надо будет както совмещать код программы с компилятором? если глупо описал то что я понял, то прошу не смеяться так как я с этим сталкиваюсь в первый раз :)
|
Ответ: Как написать свой компилятор!!!
каждая программа перерабатывает данные.
например: условия задачи -> программа -> решение. компилятор это программа, которая делает вот такое: текст программы -> компилятор -> машинный код, исполняемый процессором. Вообще почитай о языке Forth. Это самый простой язык в мире. Есть статьи Андрея Черезова где он доходчиво всё объясняет. |
Ответ: Как написать свой компилятор!!!
maxturbo, скрипты есть и на дельфи наиболее простые у FastReorta называется FastScript.
|
Ответ: Как написать свой компилятор!!!
Цитата:
|
Часовой пояс GMT +4, время: 01:01. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot