Цитата(scifi @ Jan 22 2018, 18:12)
Препроцессор не умеет сумму превращать в строку, так что умерьте хотелки.
Я давно-давно (ещё до ARM-ов) начал использовать такой способ.
Размещаю основную структуру константных данных (элементы инициализации, диапазоны изменения, строковые описатели) в ассемблерном файле.
Мне тоже понадобилось делать подсчёт разных элементов внутри структуры.
Так вот, в ассемблере это достаточно легко, примерно так:
CODE
PAR_COUNT SET 0 ; Номер параметра
...
PAR_COUNT SET PAR_COUNT + 1 ; Следующий параметр
...
PAR_COUNT SET PAR_COUNT + 1 ; Следующий параметр
...
В любой момент значением этого счётчика можно с помощью компилятора инициализировать константу, а потом использовать где угодно.
CODE
device:
DC8 A_LEN, 32
DC16 PAR_COUNT
Сообщение отредактировал amiller - Jan 23 2018, 07:18