Создание компилятора

Обсуждение проектов наших жителей.
Вы можете выставить проект на тест или найти помощников для его реализации.

Модератор: BV

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Создание компилятора

Сообщение Aquarius » 25.03.2003 (Вт) 14:51

Куда-то пропал мой старый топик по этому пишу еще раз. У кого есть литература по форматам файлов, компиляции, синтаксическому анализу, скиньте на AquariusNet@yandex.ru. Если кому интересно или кто-то уже пытался создать компилятор можем подолбаться над этим вместе. Компиляторы com меня не интересуют. ТОЛЬКО PE формат. Спасибо.
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

ToT
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 124
Зарегистрирован: 10.06.2002 (Пн) 11:56
Откуда: Russia, Taganrog

Сообщение ToT » 27.03.2003 (Чт) 9:31

Если хочечь, то можешь посмотреть на www.codenet.ru
там вроде много по этому поводу былу(целый раздел), но я там особо не осматривался, так что зацени сам.
Keyboard not found. Press any key.

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 27.03.2003 (Чт) 20:45

ну ты и загнул, компилятор на VB. Интерпретатор еще куда не шло, ладно еще делать скриптовыйй язык к свое проге, но вот компайлить EXE'шки - это тебе...... это ОЧЕНЬ геморойно будет. Я рад буду конечно, если ты ASM в совершенстве знаешь, но все равно, затея, ИМХО, уж очнь емкая :wink: ....
Изображение

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 28.03.2003 (Пт) 7:32

sanches писал(а):ну ты и загнул, компилятор на VB. Интерпретатор еще куда не шло, ладно еще делать скриптовыйй язык к свое проге, но вот компайлить EXE'шки - это тебе...... это ОЧЕНЬ геморойно будет. Я рад буду конечно, если ты ASM в совершенстве знаешь, но все равно, затея, ИМХО, уж очнь емкая :wink: ....


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

2sanches & C@r@x - ребята большое спасибо, иду смотреть ваши ссылки.
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 28.03.2003 (Пт) 19:52

ну в принципе, суть мне ясна - можно, например, "перевести" инструкции на предполагаемом языке к вызовам API, а те уже потом перевести на ASM, и уже вооружившись гигантским справочником или сторонним компилятором ASM откомпайлитьб полученный ASM в что надо

но естественным образом у меня возник вопрос: а зачем тебе писать свой компилятор (не важно, на чем). Интерпртатор - вот это было бы интересно, свой язык бы забацали :D А компилятор зачем?
Изображение

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 29.03.2003 (Сб) 9:00

sanches писал(а):ну в принципе, суть мне ясна - можно, например, "перевести" инструкции на предполагаемом языке к вызовам API, а те уже потом перевести на ASM, и уже вооружившись гигантским справочником или сторонним компилятором ASM откомпайлитьб полученный ASM в что надо

но естественным образом у меня возник вопрос: а зачем тебе писать свой компилятор (не важно, на чем). Интерпртатор - вот это было бы интересно, свой язык бы забацали :D А компилятор зачем?


Программы работать будут быстрее. Тем более что для интерпритатота рирдется писать специальную библиотеку (на подобии рантайм биб-лы VB6), скорее всего она будет не маленьких размеров. А я бы хотел сделать язык с сохранением базового синтаксиса VB, но с возможностью писать на чистом АПИ как в С++
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 29.03.2003 (Сб) 11:40

хотя писсимистичный настрой мне НИКОГДА не свойственен, тута я просто не вижу перспективы :roll:

ps я не про собственный язык, а именно про компилятор всего этого дела в PE'шки :wink: НО если же все-таки получится, то дайте знать!
Изображение

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 31.03.2003 (Пн) 18:45

Я как-то писал свой компилер. Довел его до создания исполнимых COM файлов. Язык был на уровне мат. операций (+,-,*,/), принта и еще пары фишек. До строк и работы с ними я не дошел.

С тех пор зарекся. Сейчас даже сорцов не могу найти. Это дело ОЧЕНЬ гемморойное и практически бесполезное ...
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 01.04.2003 (Вт) 6:46

Спасибо за советы, но то что это дело дрянь я и так уже понял. Правда пока я полон решимости.
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

Cyrax
Cyberninja
Cyberninja
Аватара пользователя
 
Сообщения: 891
Зарегистрирован: 25.04.2002 (Чт) 21:20
Откуда: Magnitogorsk, Russia

Сообщение Cyrax » 01.04.2003 (Вт) 12:26

вот еще сайтик. в разделе исходники посмотри... может пригодится...
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.

Welcome to IRC

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 09.04.2003 (Ср) 18:16

Тут выше проскакивало, что мол "компилятор, ты замахнулся!, вот интерпретатор...".
Вот как раз интерпретатор на VB - вещь действительно безперспективная, учитывая, что бейсик и сам довольно тормозной. А вот скорость компилятора НЕ ЗАВИСИТ от скорости языка, на к-ром он написан.
Я когда-то писал компилер на QueekBasic. Он делал то же, что и у gaidar, только с целыми числами, зато позволял делать ассемблерные вставки, определять функции (даже рекурсивные). Мой проект умер вместе с ДОСом...

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 10.04.2003 (Чт) 7:09

Так вот и я о том же. Писать компилер для Dos еще можно. Но формат PE такой запутанный что я не могу толком разобраться что куда и в какой очередности писать.
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 11.04.2003 (Пт) 15:43

Вот это-то кар раз и не проблема. Будет надо, могу сделать для твоего компилера модуль, который выполнимый код будет совать в PE файл. Но это если сделаешь что-нибудь пристойное :) Лень мне лишний раз напрягаться.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 12.04.2003 (Сб) 6:53

И на этом спасибо, одной проблемой меньше.
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 06.06.2003 (Пт) 11:17

Aquarius -
Вы мужественный человек, решившыйся писать компилятор на самом низком уровне программирования(впрочем, наверно, компиляторы так и пишутся). Конечно, в моей фразе есть доля иронии, но, все же, если человек из-за любви к искуству решился на такое...
Может я не совсем понимаю, но вроде бы у VB6 есть два уровня компиляции: промежуточный код, и компиляция обычная?.. 8)

А вообще вы молодец Aquarius, я писал когда то на паскале многоцикличный архиватор. И надо сказать, было достаточно трудно обрабатывать файл на битовом уровне.

Aquarius
Постоялец
Постоялец
 
Сообщения: 692
Зарегистрирован: 04.11.2002 (Пн) 13:13
Откуда: Russia

Сообщение Aquarius » 10.06.2003 (Вт) 8:48

Спасибо за отзыв, но пока дело труба!!!
(Всем изучать ASSEMBLER)
www.Wasm.ru, www.FlatAssembler.Net

Каденов Мират
Новичок
Новичок
 
Сообщения: 49
Зарегистрирован: 30.06.2003 (Пн) 9:28
Откуда: Kazahstan, U-Ka

Сообщение Каденов Мират » 24.07.2003 (Чт) 7:51

Люди!!! Может оживите тему. Тут у меня файлик завалялся,про форматы исполняемых файлов.
У вас нет доступа для просмотра вложений в этом сообщении.


Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4

    TopList