реклама на сайте
подробности

 
 
> Предпроцессор асма AVR
adc
сообщение Aug 14 2009, 13:45
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 409
Регистрация: 29-10-07
Пользователь №: 31 836



Подскажите пожалуйста, можно ли сделать вставку в массив данных в ввиде сообщения?:
Код
Код
.equ     param =55
...
.db "параметр=?"

т.е. что-бы при компиляции, на место вопроса ставилось 55. (в текстовом виде)
Пример упростил для простоты понимания.

Наверное прийдется контроллером пережевывать. laughing.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adc
сообщение Aug 17 2009, 11:17
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 409
Регистрация: 29-10-07
Пользователь №: 31 836



Цитата(Qwertty @ Aug 16 2009, 15:21) *
Код
db "параметр=?", (param / 10)+'0',(param % 10)+'0'

только в AVRASM2 есть у препроцессора остаток от деления
Для AVRASM будет примерно так
Код
db "параметр=?", (param / 10)+'0',(param - (param / 10)*10)+'0'
В этом случае к значению нуля '0' (0x30) прибавляется пересчитанное значение, которое дает смещение в таблице символов. Это работает, по понятным причинам, до значения '9'. Соответственно значение "55" преобразовать не получится. Видимо это нельзя сделать в принципе. crying.gif
Go to the top of the page
 
+Quote Post
Qwertty
сообщение Aug 17 2009, 14:10
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527



Цитата(adc @ Aug 17 2009, 15:17) *
В этом случае к значению нуля '0' (0x30) прибавляется пересчитанное значение, которое дает смещение в таблице символов. Это работает, по понятным причинам, до значения '9'. Соответственно значение "55" преобразовать не получится. Видимо это нельзя сделать в принципе. crying.gif

Это относительно стандартное преобразование в строку, только выполняемое еще препроцессором. И работает не до 9, а до 99, так что 55 прекрасно разложится в
Код
db "параметр=?", '5','5'

Разве не это требовалось?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 16:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01588 секунд с 7
ELECTRONIX ©2004-2016