-
- Такая методика широко известна, для тех кто сталкивался с 8-битными
игрушками прибитыми к полу. Но так же известно, что она
малоприменима на практике. Ещё доисторический M80 в CP/M умел
генерировать таблицу релокаций, причём лучше (чем вот так)...
Вообще я не совсем понимаю, как ты сможешь разделить .text и .data,
в смысле избавиться от фиксированного смещения между ними.
Допустим, ты по адресу понял, что относится к .text, что к .data и
при загрузке каждый сегмент fk0(522 знак., 18.09.2020 23:52, ссылка, ссылка)
- в бинарнике нет никаких смещений! есть абсолютные адреса! Aleksey_75(110 знак., 19.09.2020 00:00, картинка)
- Ответь для себя на простой вопрос: что случится с указателями на
функции (в месте где они переменной присваиваются), и что случится
в варианте, когда у тебя адрес переменной в коде загружается как
непосредственное значение, но не через LDR, а парой MOV Rn, #imm16
и MOVT Rn, #imm16. - fk0(19.09.2020 00:14)
- Я не изобретаю серебряную пулю! в моем случае подобное в модулях
недопустимо! Хотя и в общем случае , присваивать указатель на
функцию значением идея так себе! - Aleksey_75(19.09.2020 00:24)
- Oh my... А машины состояния как писать? lloyd(62 знак., 19.09.2020 10:44)
- Я не изобретаю серебряную пулю! в моем случае подобное в модулях
недопустимо! Хотя и в общем случае , присваивать указатель на
функцию значением идея так себе! - Aleksey_75(19.09.2020 00:24)
- Ответь для себя на простой вопрос: что случится с указателями на
функции (в месте где они переменной присваиваются), и что случится
в варианте, когда у тебя адрес переменной в коде загружается как
непосредственное значение, но не через LDR, а парой MOV Rn, #imm16
и MOVT Rn, #imm16. - fk0(19.09.2020 00:14)
- в бинарнике нет никаких смещений! есть абсолютные адреса! Aleksey_75(110 знак., 19.09.2020 00:00, картинка)
- Такая методика широко известна, для тех кто сталкивался с 8-битными
игрушками прибитыми к полу. Но так же известно, что она
малоприменима на практике. Ещё доисторический M80 в CP/M умел
генерировать таблицу релокаций, причём лучше (чем вот так)...
Вообще я не совсем понимаю, как ты сможешь разделить .text и .data,
в смысле избавиться от фиксированного смещения между ними.
Допустим, ты по адресу понял, что относится к .text, что к .data и
при загрузке каждый сегмент fk0(522 знак., 18.09.2020 23:52, ссылка, ссылка)