CODE 6.1 | 반가산기 실습
| 01 | void setup() { |
| 02 | pinMode(10, OUTPUT); // 합(Sum) 출력 핀 |
| 03 | pinMode(11, OUTPUT); // 자리올림(Carry) 출력 핀 |
| 04 | pinMode(2, INPUT_PULLUP); // 입력 A (버튼 1) |
| 05 | pinMode(3, INPUT_PULLUP); // 입력 B (버튼 2) |
| 06 | } |
| 07 | |
| 08 | void loop() { |
| 09 | // 버튼을 누른 상태(LOW)를 논리 참(1)으로 정의한다. |
| 10 | int A = (digitalRead(2) == LOW); |
| 11 | int B = (digitalRead(3) == LOW); |
| 12 | // [반가산기 논리 판별 과정] |
| 13 | int S = A ^ B; // 합(Sum): XOR 연산자(^) 사용 |
| 14 | int C = A && B; // 자리올림(Carry): AND 연산자(&&) 사용 |
| 15 | // 결과 출력 |
| 16 | digitalWrite(10, S); // 합의 결과를 10번 LED로 출력 |
| 17 | digitalWrite(11, C); // 자리올림 결과를 11번 LED로 출력 |
| 18 | } |
댓글 없음:
댓글 쓰기