Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Как в ассемблере получить доступ к полю структуры, описанной в СИ?
Отправлено
mandigit
(85.141.201.248)
09 июля 2011, г. 23:05
Составить ответ
|
Вернуться на конференцию
Ответы
один раз в начале программы из адреса поля вычесть адрес начала структуры и дальше в асм использовать полученное число как смещение
-
Токовый клещ
(
пустое
, 11.07.2011, 02:24:11
95.25.216.236
)
Обычно существуют документы для компилятора типа "Mixing C with ASM"
-
misyachniy
(
пустое
, 10.07.2011, 14:57:35
213.111.90.166
)
существуют, но там это не упоминается
-
mandigit
(
пустое
, 10.07.2011, 20:24:27
85.141.179.205
)
значит предпологаеца, что нормальным людям это не надо, а то мало ли, кому то взбредет битовые поля сишные из асма менять - на всех полоумных документописателей не хватит)))
-
ы
(
пустое
, 10.07.2011, 23:07:0
217.118.66.7
)
я б сделал так - сделать С файл, в котором сделать обращение к этому полю (оптимизео - off, листинг - on) - потом в листинге посмотреть как в реале имя будет выглядеть, нарисовать в асм файле "extern имя " ну и пихать свой "call имя". Некотрые асмы понимают extern struct, но тут уже дейтшит читать надо, общих рекомендаций нет
-
DASM
(
пустое
, 09.07.2011, 23:27:53
78.36.78.43
)
в листинге тупо добавляется число к базе. Похоже сдвиг в структуре исключтельно внутренняя информация компилятора.
-
mandigit
(
пустое
, 10.07.2011, 20:25:41
85.141.179.205
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
вычтите из двух единицу:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru