Pull to refresh

Comments 9

Стойкое ощущение, что проще было бы не «магией» заниматься, а за несколько вечеров налабать полноценный парсер/генератор ELF-файла, там же только заголовок и таблицу секций нужно читать/писать и добавлять сгенерированные компилятор данные в новые секции. Порядок-то секций в файле не критичен.
Порядок загружаемых сегментов в разделе заголовков, должен быть по возрастанию виртуального адреса в памяти
Это понятно, а что мешает сгенерировать новый список сегментов, добавив новые, если нужно.
По поводу упрощённого способа перевода, может я не правильно понимаю термин дизассемблировать?!
Пишем в файле

format Binary as «bin»
org 0x0
USE64
mov r10, [r12 + r13]


Далее fasm <файл>

Видим внутри 4F 8B 14 2C
Вы правы, я действительно употребил его не к месту в том фрагменте. Исправил.

UPD ответил не в тот тред
Вы правы, я действительно употребил его не к месту в том фрагменте. Исправил
Окей, а теперь я бы хотел слинковать с этим какую-нибудь библиотеку (например написанную на ассемблере). И тут у нас появляются GOT и PLT и все становится лишь немного интереснее, а вот возможностей прибавляется в разы. Как насчет продолжить проект? )
Прочел про GOT и PLT. Звучит, действительно, так, что станет «лишь немного интереснее» (как «приключение на 20 минут»).
Но, не считая воспроизведения результатов для этого поста, я не занимался подобными вещами уже несколько лет. А сейчас, боюсь, не хватит ни запала, ни остаточных знаний
Было бы интересно узнать что еще делают в бауманке по компиляторам. Наверно не только мне )
Sign up to leave a comment.

Articles