-
- Все оказалось не просто: mandigit(630 знак., 22.09.2010 15:37)
- Для этого ассемблерную переменную нужно разместить в сегменте/секции инициализированных переменных и линкер положит её (секцию) в соответствующую часть ROM и "инициализатор" при запуске программ скирует всё в RAM. Такая секция обычно называется .data - fk0(22.09.2010 14:15)
- А тупо по адресу нельзя ? то есть для C __no_init u8 asd @ 0x345; а в асме уже и оперировать - megajohn(22.09.2010 13:45)
- Говнокод. - fk0(22.09.2010 14:15)
- можно в си описать переменную и проинициализировать, а в асм использовать, типа mandigit(116 знак., 22.09.2010 13:54)
- Так бы и стоило делать. - fk0(22.09.2010 14:16)
- нет, переменная должна формально определяться в блоке, к которому она логически относится, Иначе нарушается культура программирования. - mandigit(22.09.2010 14:21)
- В культурных программах блоки на C пишутся, а ассемблер через asm("") вставляется, а не наоборот. - fk0(22.09.2010 15:35)
- Ну, ну ... - Bill(22.09.2010 17:44)
- боже упаси через "asm" что нибудь вставлять в си mandigit(56 знак., 22.09.2010 15:41)
- В культурных программах блоки на C пишутся, а ассемблер через asm("") вставляется, а не наоборот. - fk0(22.09.2010 15:35)
- нет, переменная должна формально определяться в блоке, к которому она логически относится, Иначе нарушается культура программирования. - mandigit(22.09.2010 14:21)
- Обычно принято объявлять переменные глобальными. BK(45 знак., 22.09.2010 13:57, )
- я могу ошибаться, но переменная, объявленная вне контекста функции в си является глобальной. при объявлении в асм файле использую соответствующий .h заголовок для доступа к ней из си файлов. Или что-то другое имеется ввиду? - mandigit(22.09.2010 14:02)
- Кроме заголовочного файла требуется объявления переменной глобальной и в asm файле. BK(69 знак., 22.09.2010 14:06, )
- ну да, конечно (невнимателен я) - mandigit(22.09.2010 14:10)
- Кроме заголовочного файла требуется объявления переменной глобальной и в asm файле. BK(69 знак., 22.09.2010 14:06, )
- я могу ошибаться, но переменная, объявленная вне контекста функции в си является глобальной. при объявлении в асм файле использую соответствующий .h заголовок для доступа к ней из си файлов. Или что-то другое имеется ввиду? - mandigit(22.09.2010 14:02)
- Так бы и стоило делать. - fk0(22.09.2010 14:16)
- Что значит "инициализатор компилятора не хочет воспринимать"? - BK(22.09.2010 13:42, )
- вопрос специфический. специфика - это компилятор и микроконтроллер. каковы они? - jaga-jaga(22.09.2010 13:08)
- иар5, AVRmega8 - mandigit(22.09.2010 13:09)