Судя по результатам поиска в Google, оно представляется * именем бита, который управляет «Выходом таймера / счетчика Сравнение совпадений с прерыванием» * * в «Регистре маски прерывания таймера / счетчика» * из «8bit AVR Microcontroller "* Используется следующим образом *:
TIMSK0 |= _BV(OCIE0A); // enable compare A interrupts
TIMSK0 &= ~_BV(OCIE0A); // disable compare A interrupts
Где TIMSK0
- * Регистр маски прерывания таймера *.OCIE0A
- это идентификатор, который (для тех, кто знаком с кодом AVR *) более понятен *, чем TIMSK0 |= 2
*.
Они используют битовые идентификаторы вместо масок, поскольку любой полу-коммутатор-компилятор может оптимизировать их до одного и того же для бит-> маска, но переход от маски-> бит сложнее *.Таким образом, оставляя его как битовый код, это легко и быстро для всех случаев использования. *.
На несвязанной ноте числа - это значения, которые хранятся в компьютере в двоичном виде.«Десятичные» и «шестнадцатеричные» являются представлениями этих значений.Так что нет, OCIE0A не является "шестнадцатеричным".Это символ, который представляет битовое смещение флага со значением 1.
* предположения везде, я ничего не знаю