Często podczas programowania mikroprocesorów trzeba wykonywać operacje bitowe.
Poniżej przedstawiam spis najważniejszych.

Ustawianie bitów (np. w rejestrach)

 Bash | 
 
 copy code |
?

1
PORTA |= (1< <PA3);  
2
ADCSRA |= (1<<ADEN) | (1<<ADSC); 

Zerowanie bitów (np. w rejestrach)

 Bash | 
 
 copy code |
?

1
PORTA = ~(1< <PA3);  
2
PORTA = ~0x04;

Sprawdzanie bitów

 Bash | 
 
 copy code |
?

1
if(PINA & (1< <PA0)) { .. }

Konwersja 16bit na 8bit

 Bash | 
 
 copy code |
?

1
uint16_t value = 0xffff;
2
uint8_t lo = value & 0xff;
3
uint8_t hi = value >> 8;

Konwersja 8bit na 16bit

 Bash | 
 
 copy code |
?

1
uint16_t value = lo | uint16_t(hi) < < 8;