при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Ну уж куда мне до Ххимеры...HHIMERA писал(а):Просто лысый решил поумничать... Не у всех Cortex есть bit banding... в М0 он отсутствует...
================
На мелких проектах и при нынешнем обилии ОЗУ... в битах вообще особого смысла нет...
Разве что к слову... пустому...КРАМ писал(а):Правда некоторые математические операции требуют побитовой обработки ОДНОГО слова, но это так... к слову...![]()
Та да... 256 байт вполне хватит...И размер ОЗУ тут вообще ни к селу, ни к городу...
От незнания к вере???Если в кодах Хемминга требуется перестановка бит в ПОТОКЕ данных, то отсутствие адресации бит ЗАМЕДЛЯЕТ обработку...
Да и Бог с ним, с Хэммингом... Обработка графических полей для монохромных LCD превращается в громоздкий индусский код...
Фикция - это не разобравшись в архитектуре пытаться давать умные советы...К вопросу об универсальности копеечных М0. При отсутствии битовых команд и битового расширения адресов любая битовая команда превращается в НАБОР команд. Тогда и заявленная производительность - фикция...
не хуже чем AVR....любая битовая команда превращается в НАБОР команд...
Код: Выделить всё
volatile uint32_t Flags;
#define BLINK 0x00000004
Flags ^= BLINK;
LDR r1,[r4,#8] ; Flags
MOVS r2,#4
EORS r1,r1,r2
STR r1,[r4,#8] ; FlagsКод: Выделить всё
volatile unsigned char Flags;
#define BLINK 0x04
Flags ^= BLINK;
LDI R16, 4
LDI R30, LOW(Flags)
LDI R31, (Flags) >> 8
LD R17, Z
EOR R17, R16
ST Z, R17
Код: Выделить всё
LD A, L:Flags
XOR A, #0x4
LD L:Flags, A
Код: Выделить всё
bit BLINK;
BLINK=~BLINK;
movlw (0+1) shl (_BLINK& (0+7))
xorwf _BLINK/(0+8),f
А что там обсуждать??? Уже разобрались...КРАМ писал(а):Обсуждались не преимущества Кортекса, а битовая адресация...
напугала фраза:обсуждались не преимущества Кортекса, а битовая адресация...
проверил как с этим у других мк - круче в этом только пики. У меня, в моих программках мало работы с битами - кортексы рулят.При отсутствии битовых команд и битового расширения адресов любая битовая команда превращается в НАБОР команд. Тогда и заявленная производительность - фикция...
Да не ведись... Марк троллит по незнанию и в расчёте на незнание...oleg110592 писал(а):круче в этом только пики. У меня, в моих программках мало работы с битами - кортексы рулят.
Чушь!!! От архитектуры Cortex это никак не зависит... у Cortex тоже "вывод одного бита при правильно написанном коде компилируется как ОДНА команда"... а в F2XX и F4XX ещё и выполняется за ОДИН такт!!! Учи матчасть!!!КРАМ писал(а):Ващето вывод одного бита при правильно написанном коде компилируется как ОДНА команда...
А в Кортексах не менее трех, да и то при наличии битовой адресации...