jcxz 184 7 октября, 2017 Опубликовано 7 октября, 2017 · Жалоба Насколько помню, ARM7TDMI не имеет специальных арифметических команд работы с байтами, потому все байтовые операции выполняются в 32 битах и в конце на результат принудительно накладывается маска. Не важно какие арифметические команды имеет этот CPU. Так как это ядро не имеет арифметических (или логических) команд с операндами в памяти. Любой операнд должен быть предварительно загружен в регистр, а результат операции - выгружен в ОЗУ соответствующими командами LDR/STR. Команды LDR/STR имеют варианты для 8-,16- и 32-битных данных. И выполняются за одинаковое время. Никаких масок на 8-битный результат накладывать не надо - можно сразу выполнить STRB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 7 октября, 2017 Опубликовано 7 октября, 2017 · Жалоба Никаких масок на 8-битный результат накладывать не надо - можно сразу выполнить STRB. Это если надо его записать в память. А если продолжить работу в регистрах, то придется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться