token1993 0 27 апреля, 2021 Опубликовано 27 апреля, 2021 · Жалоба Помогите пожалуйста новичку не могу понять почему в AND И ORR получаются такие значения __ASM("MOV R0, #0x05"); // Загрузка в регистр R0 числа 0x05 __ASM("MOV R1, #0x06"); // Загрузка в регистр R1 числа 0x06 __ASM("AND R3, R0, R1"); // R3 = R0 & R1 = 0x04 __ASM("ORR R4, R0, R1"); // R4 = R0 | R1 = 0x07 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 27 апреля, 2021 Опубликовано 27 апреля, 2021 · Жалоба 1 minute ago, token1993 said: почему в AND И ORR получаются такие значения А какие должны??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
token1993 0 27 апреля, 2021 Опубликовано 27 апреля, 2021 · Жалоба Я понимаю что они должны быть такие Но я не понимаю как правильно считать такие числа Что бы получилось как в примере Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 27 апреля, 2021 Опубликовано 27 апреля, 2021 · Жалоба 2 minutes ago, token1993 said: Но я не понимаю как правильно считать такие числа На бумажке переведите в двоичный формат, затем проведите нужные операции: 5 101 101 6 & 110 | 110 --- --- 100 = 4 111 = 7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
token1993 0 27 апреля, 2021 Опубликовано 27 апреля, 2021 · Жалоба Большое спасибо Теперь понятно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrBearManul 0 28 апреля, 2021 Опубликовано 28 апреля, 2021 · Жалоба 2 часа назад, token1993 сказал: Но я не понимаю как правильно считать такие числа Изучайте Булеву алгебру. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться