void setup() {
Serial.begin(9600);
// ตั้งค่าการสื่อสารทาง Serial
}
void loop() {
// โค้ดที่ทำงานวนไปเรื่อย ๆ
uint16_t data = 0b1100110011001100;
// การใช้ AND บิต
uint16_t mask1 = 0b1010101010101010;
uint16_t result1 = data & mask1; // ผลลัพธ์คือ 0b1000100010001000
Serial.print("AND Result: ");
printBinary(result1);
// การใช้ OR บิต
uint16_t mask2 = 0b1010101010101010;
uint16_t result2 = data | mask2; // ผลลัพธ์คือ 0b1110111011101110
Serial.print("OR Result: ");
printBinary(result2);
// การใช้ XOR บิต
uint16_t mask3 = 0b1010101010101010;
uint16_t result3 = data ^ mask3; // ผลลัพธ์คือ 0b0110011001100110
Serial.print("XOR Result: ");
printBinary(result3);
delay(1000);
}
void printBinary(uint16_t val) {
for (int i = 15; i >= 0; --i) {
Serial.print((val & (1 << i)) ? '1' : '0');
}
Serial.println();
}