code 10장
TRANSCRIPT
10. 논리와 스위치CODE
The Hidden Language of Computer Hardware and Software
김지훈아꿈사
2013. 01. 26.
2
논리의 탐구CODE
3
아리스토텔레스
모든 인간은 죽는다 .
소크라테스는 인간이다 .
따라서 소크라테스도 죽는다 .
4
찰스 도즈슨
모든 철학자는 논리적이다 .
논리적이지 않은 사람은 항상 옹고집이다 .
철학자는 옹고집이 아니다 ?
조지 부울 (1815-1864)
부울대수 논리를 수학으로 표현하려는 시도 발상의 전환
5
6
부울 대수CODE
7
기존의 대수학
에냐는 1 킬로그램의 두부를 가지고 있습니다 .
베티는 에냐보다 2 배 많은 두부를 가지고 있습니다 .
카르멘은 베티보다 2 킬로그램 많은 두부를 가지고 있습니다 .
디어드라는 카르멘보다 3 배 많은 두부를 가지고 있다고 할 때 ,
디어드라가 가지고 있는 두부의 양은 얼마일까요 .
A = 1
B = 2 x A
C = B + 2
D = 3 x C
D = ?
8
기존의 대수학
에냐는 1 킬로그램의 두부를 가지고 있습니다 .
베티는 에냐보다 2 배 많은 두부를 가지고 있습니다 .
카르멘은 베티보다 2 킬로그램 많은 두부를 가지고 있습니다 .
디어드라는 카르멘보다 3 배 많은 두부를 가지고 있다고 할 때 ,
디어드라가 가지고 있는 두부의 양은 얼마일까요 .
A = 1
B = 2 x A
C = B + 2
D = 3 x C
D = ? D = 3 x (B + 2)
D = 3 x ((2 x A) + 2)
D = 3 x ((2 x 1) + 2)
D = 12
9
대수학의 법칙
A + B = B + A
A x B = B x A
A + (B + C) = (A + B) + C
A x (B x C) = (A x B) x C
A x (B + C) = (A x B) + (A x C)
10
부울 대수
대수학은 숫자에 대해 연산을 수행
부울대수는 집합에 대해 연산을 수행
11
고양이의 종류
수컷 암컷
검정색 갈색 흰색
중성화 안함중성화 함
12
부울 대수의 연산
13
부울 대수의 연산
14
부울 대수의 연산
W + (B x F) = (W + B) x (W + F)
W x (B + F) = (W x B) + (W x F)
15
부울 대수의 연산
A + B = B + A
A x B = B x A
A + (B + C) = (A + B) + C
A x (B x C) = (A x B) x C
일반적인 대수와 동일
16
부울 대수의 연산
1 은 전체 집합을 의미
M + F = 1
T + B + W + O = 1
N + U = 1
1 – M = F
17
부울 대수의 연산
0 은 아무 것도 포함하지 않는 집합
M x F = 0
1 x F = F
0 x F = 0
0 + F = F
18
부울 대수의 연산
1 + F = 1
F + (1 – F ) = 1
F x (1 – F ) = 0
F x F = F
X2 = X
F + F = F
19
모든 인간은 죽는다 .
소크라테스는 인간이다 .P
S
M
PP x M = P
S x P = S
20
모든 인간은 죽는다 .
소크라테스는 인간이다 .P
S
M
P
M
S
P x M = P
S x P = S
S x (P x M) = S(S x P) x M = S
S x M = S소크라테스는 죽는다 .
21
부울 대수의 연산“ 중성화된 수컷 고양인데 , 하얀색이나 갈색이었으면 좋겠어요 . 아니면 중성화된 암컷 고양이에 하얀색만 아니면 괜찮을 것 같아요 . 음… 검정 고양이면 아무거나 괜찮을 것 같기도 하네요 .”
(M x N x (W + T)) + (F x N x (1 – W)) + B
중성화 되지 않은 수컷 갈색 고양이 ?
(1 x 0 x (0 + 1)) + (0 x 0 x (1 – 0)) + 0
22
부울 대수의 연산중성화 되지 않은 수컷 갈색 고양이 ?
U M T
(M x N x (W + T)) + (F x N x (1 – W)) + B
(1 x 0 x (0 + 1)) + (0 x 0 x (1 – 0)) + 0
23
부울 대수의 연산
X 0 1
0 0 0
1 0 1
0 x 0 = 00 x 1 = 01 x 0 = 01 x 1 = 1
+ 0 1
0 0 1
1 1 1
0 + 0 = 00 + 1 = 11 + 0 = 11 + 1 = 1
24
부울 대수의 연산
X 0 1
0 0 0
1 0 1
+ 0 1
0 0 1
1 1 1
(1 x 0 x (0 + 1)) + (0 x 0 x (1 – 0)) + 0
= (1 x 0 x 1) + (0 x 0 x 1) + 0
= 0 + 0 + 0
= 0
25
부울 대수의 연산
X 0 1
0 0 0
1 0 1
+ 0 1
0 0 1
1 1 1
중성화된 회색 암컷 고양이 ?
N O F
(M x N x (W + T)) + (F x N x (1 – W)) + B
(0 x 1 x (0 + 0)) + (1 x 1 x (1 – 0)) + 0
= (0 x 1 x 0) + (1 x 1 x 1) + 0
= 0 + 1 + 0
= 1
26
다시 회로를 만들어 봅시다 .CODE
27
AND
AND 0 1
0 0 0
1 0 1
28
OR
OR 0 1
0 0 1
1 1 1
29
(M x N x (W + T)) + (F x N x (1 – W)) + B
30
중성화 안된 수컷 갈색 고양이 U M T
31
중성화된 암컷 흰색 고양이 N F W
32
중성화된 회색 암컷 고양이 N W F
33
중성화된 회색 암컷 고양이 N W F
34
결론
부울 대수는 전기 회로로 표현 할 수 있다 .