C/C++

Как написать с++ на Ассемблере

Мне нужен код всей библиотеки с++ на Ассемблере. И не только библиотек; все циклы, массивы и тд. Не нужно советовать написать что-то на с++,а потом ассемблировать ( только если это не совсем замудренный, чем то интересный способ)
Илья Ягудин
Илья Ягудин
2 399
1. Библиотека с++ (которая STL) устроена так, что значительная её часть (заголовочно-шаблонная) может быть написана только на с++, ни о каком ассемблере или другом языке речи в принципе идти не может, ибо реальный код порождается только при окончательной раскрутке шаблонов с пользовательскими типами.
2. Написание библиотеки и написание компилятора - принципиально разные вещи. Библиотеку иногда заменяют в практических приложениях, например для некоторых встроенных систем с нестандартной архитектурой железа, беря какой-то минимальный кусочек с менеджером памяти, строками и парой контейнеров. Реальные же компиляторы настолько сложны, что с ними не могут справиться и сами разработчики, а их там далеко не один человек.
Можно пробовать написать компилятор очень микроскопического подмножества языка на уровне где-то: целочисленного типа, вывода в поток и арифметических операций, без каких-либо библиотек. Как это делается - написано в Книге Дракона.
Anatoly Dokuchaev
Anatoly Dokuchaev
30 155
Лучший ответ
Ты будешь первым, кто написал компилятор C++ на ассемблере. Надеюсь, твоей жизни хватит для этого ;) Компиляторы пишутся раскруткой - сначала компилятор очень простого варианта языка, он может быть написан на ассемблере или на другом языке, затем с его помощью создается более сложный компилятор и т. д. Впрочем, можно написать компилятор сложного языка и сразу на другом языке, но на ассемблере и в таком случае никто компилятор не пишет.
Alfredo Germono
Alfredo Germono
87 845
А зачем? Может есть более простой способ решить твою проблему.
Илья Ягудин Мне это для того чтобы лучше понять язык Ассемблера, а может даже лучше с++ узнаю) Но ассемблировать каждый код что есть в с++,все равно что копать яму ложкой-долго и сложно