История изменений
Исправление beastie, (текущая версия) :
Что делает эта связка ioval= ioval & 0xFE; мне не ясно совсем
Снимает младший бит.
// set bit
val |= 1<<n;
// clear bit
val &= ~(1<<n)
В твоём примере n=0: ~(1<<0) == ~1 == 0xFE == b11111110
bwhatever & b11111110 = bwhateve0
Исправление beastie, :
Что делает эта связка ioval= ioval & 0xFE; мне не ясно совсем
Снимает младший бит.
// set bit
val |= 1<<n;
// clear bit
val &= ~(1<<n)
В твоём примере n=0: ~(1<<0) == ~1 == 0xFE == 0x11111110
0xwhatever & 0x11111110 = 0xwhateve0
Исправление beastie, :
Что делает эта связка ioval= ioval & 0xFE; мне не ясно совсем
Снимает младший бит.
// set bit
val |= 1<<n;
// clear bit
val &= ~(1<<n)
В твоём примере n=1: ~(1<<1) == ~1 == 0xFE == 0x11111110
0xwhatever & 0x11111110 = 0xwhateve0
Исходная версия beastie, :
Что делает эта связка ioval= ioval & 0xFE; мне не ясно совсем
Снимает младший бит.
// setbit
val |= 1<<n;
// clear bit
val &= ~(1<<n)
В твоём примере n=1: ~(1<<1) == ~1 == 0xFE == 0x11111110
0xwhatever & 0x11111110 = 0xwhateve0