eden
Сен. 30, 2008 13:11:05
Хочу написать свой компилятор на Питоне, но не знаю как сделать преобразование (если можно так сказать) чтобы получить из исходника исполняемый файл, то есть
Исходник: “test.test” (мой синтаксис)
echo “Hello, World”
И при запуске myscript.py “test.test” получаем объектный файл “test.out”, который является исполняемым
У меня есть некие идеи, но они (по моему) не очень эффективные, и громозки:
1. Конвертировать код в Ассемблер и вызвать сборщика (например, nasm)
2. То же самое, только Си
————————————————————
Заранее сорри, если вопрос некорректен
Заранее спасибо!
shiza
Сен. 30, 2008 13:34:09
eden
Сен. 30, 2008 13:45:56
Ну там теория, и опять же нету (как сделать преобразование (если можно так сказать) чтобы получить из исходника исполняемый файл)
shiza
Сен. 30, 2008 13:56:09
“Транслятор, который преобразует программы в машинный язык, принимаемый и исполняемый непосредственно процессором, называется компилятором”
Переводишь в машинные инстуркции. Бери каку-нибудь книжку по архитекуре x86 микропроцессоров (могу порекомендовать книжки Шагурина И.И), справочник с командами и вперед =)
З.Ы. Я бы начал с досовских COM файлов - у них заголовки попроще.
З.З.Ы. А вообще - если подход серьезный - я бы всетки рекомендовал обратить внимание на GCC.
ZAN
Сен. 30, 2008 13:57:49
Боюсь, что без знания теории написать свой компллятор не получится.
eden
Сен. 30, 2008 14:00:07
GCC - исходники шарил (частично), но интересного ни чего не нашел
А по поводе книги по “архитекуре x86 микропроцессоров ” Спасибо
Поисчу сейчас
eden
Сен. 30, 2008 14:01:45
–> Боюсь, что без знания теории написать свой компллятор не получится.
Согласен
shiza
Сен. 30, 2008 14:08:27
Зря.
“GNU Compiler Collection (обычно используется сокращение GCC) — набор компиляторов для различных языков программирования.”
Это можно сказать фремворк для компиляторов. Он 80% работы берет на себя.
shiza
Сен. 30, 2008 14:12:09
eden
Сен. 30, 2008 14:16:17
shiza, видимо тоже этим занимаешься?