Bit manipulation - MarekBykowski/readme GitHub Wiki
HOME ยป Bit manipulation
Set/clear bit
#define NTH_BIT 4
unsigned int addr = 0xffffffff;
enum flags { clear, set };
addr &= ~(1 << NTH_BIT);
printf("mb: clearing %dth bit %x results in %x\n", NTH_BIT, 0xffffffff, addr);
addr |= (1 << NTH_BIT);
printf("mb: setting %dth bit in %x = %x\n", NTH_BIT, 0xffffffff, addr);
Clear bit 4, set bit 7 at X1
LDR X0, [X1]
AND X0, X0, #~(1 << 4)
ORR X0, X0, #(1 << 7)
STR X0, [X1]