0 또는 1로 구성된 신호
OR(A+B)
A | B | OUT |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
AND(AB)
A | B | OUT |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
NOT-()
NOT게이트는 결과값이 반대가 된다.
NOR-(A+B)
A | B | OUT |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
NAND-(AB)
A | B | OUT |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
논리연산을 가지고 간단한 덧셈 계산기를 만들 수 있다.
A | B | OUT |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | ??? |
위 처럼 1 + 1 일때는 어떻게 해야할까
이진수에서 1+1은 10이지만 위의 계산기는 한 자릿수 밖에 표현하지 못한다.
즉, 1 + 1은 0이 나오고 십의자리로 올라간 1이 남게 되는데, 이때 이 1을 Carry/CarryBit 라고 한다.
A | B | OUT | Carry |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 1 |
기존의 논리연산만으로는 충분한 계산이 불가하다. 그래서 논리연산은 복합적으로 사용할 수 있다.
XOR(sum)
+SUM | 0 | 1 |
---|---|---|
0 | 0 | 1 |
1 | 1 | 0 |
위와 같은 식을 만들기 위해서는 하나의 논리연산이 아닌 복합적인 논리연산이 필요하다.
A | B | OR OUT | NAND OUT | 원하는 결과 |
---|---|---|---|---|
0 | 0 | 0 | 1 | 0 |
0 | 1 | 1 | 1 | 1 |
1 | 0 | 1 | 1 | 1 |
1 | 1 | 1 | 0 | 0 |
OR OUT | NAND OUT | AND | 원하는 결과 |
---|---|---|---|
0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 |
1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 |
연산결과와 원하는결과가 같아졌다.
이 계산기를 XOR 게이트(가산기) 라고 한다.