code 10장

34
10. 논논논 논논논 CODE The Hidden Language of Computer Hardware and Software 논논논 논논논 2013. 01. 26.

Upload: ji-hun-kim

Post on 20-May-2015

168 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Code 10장

10. 논리와 스위치CODE

The Hidden Language of Computer Hardware and Software

김지훈아꿈사

2013. 01. 26.

Page 2: Code 10장

2

논리의 탐구CODE

Page 3: Code 10장

3

아리스토텔레스

모든 인간은 죽는다 .

소크라테스는 인간이다 .

따라서 소크라테스도 죽는다 .

Page 4: Code 10장

4

찰스 도즈슨

모든 철학자는 논리적이다 .

논리적이지 않은 사람은 항상 옹고집이다 .

철학자는 옹고집이 아니다 ?

Page 5: Code 10장

조지 부울 (1815-1864)

부울대수 논리를 수학으로 표현하려는 시도 발상의 전환

5

Page 6: Code 10장

6

부울 대수CODE

Page 7: Code 10장

7

기존의 대수학

에냐는 1 킬로그램의 두부를 가지고 있습니다 .

베티는 에냐보다 2 배 많은 두부를 가지고 있습니다 .

카르멘은 베티보다 2 킬로그램 많은 두부를 가지고 있습니다 .

디어드라는 카르멘보다 3 배 많은 두부를 가지고 있다고 할 때 ,

디어드라가 가지고 있는 두부의 양은 얼마일까요 .

A = 1

B = 2 x A

C = B + 2

D = 3 x C

D = ?

Page 8: Code 10장

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

Page 9: Code 10장

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)

Page 10: Code 10장

10

부울 대수

대수학은 숫자에 대해 연산을 수행

부울대수는 집합에 대해 연산을 수행

Page 11: Code 10장

11

고양이의 종류

수컷 암컷

검정색 갈색 흰색

중성화 안함중성화 함

Page 12: Code 10장

12

부울 대수의 연산

Page 13: Code 10장

13

부울 대수의 연산

Page 14: Code 10장

14

부울 대수의 연산

W + (B x F) = (W + B) x (W + F)

W x (B + F) = (W x B) + (W x F)

Page 15: Code 10장

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

일반적인 대수와 동일

Page 16: Code 10장

16

부울 대수의 연산

1 은 전체 집합을 의미

M + F = 1

T + B + W + O = 1

N + U = 1

1 – M = F

Page 17: Code 10장

17

부울 대수의 연산

0 은 아무 것도 포함하지 않는 집합

M x F = 0

1 x F = F

0 x F = 0

0 + F = F

Page 18: Code 10장

18

부울 대수의 연산

1 + F = 1

F + (1 – F ) = 1

F x (1 – F ) = 0

F x F = F

X2 = X

F + F = F

Page 19: Code 10장

19

모든 인간은 죽는다 .

소크라테스는 인간이다 .P

S

M

PP x M = P

S x P = S

Page 20: Code 10장

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소크라테스는 죽는다 .

Page 21: Code 10장

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

Page 22: Code 10장

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

Page 23: Code 10장

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

Page 24: Code 10장

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

Page 25: Code 10장

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

Page 26: Code 10장

26

다시 회로를 만들어 봅시다 .CODE

Page 27: Code 10장

27

AND

AND 0 1

0 0 0

1 0 1

Page 28: Code 10장

28

OR

OR 0 1

0 0 1

1 1 1

Page 29: Code 10장

29

(M x N x (W + T)) + (F x N x (1 – W)) + B

Page 30: Code 10장

30

중성화 안된 수컷 갈색 고양이 U M T

Page 31: Code 10장

31

중성화된 암컷 흰색 고양이 N F W

Page 32: Code 10장

32

중성화된 회색 암컷 고양이 N W F

Page 33: Code 10장

33

중성화된 회색 암컷 고양이 N W F

Page 34: Code 10장

34

결론

부울 대수는 전기 회로로 표현 할 수 있다 .