제4강 명제와 논리-정보

64
4 4 . . 제제제 제제 제제제 제제 1

Upload: csungwoo

Post on 19-Jan-2015

1.497 views

Category:

Education


13 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 제4강 명제와 논리-정보

제제 44 강강 . . 디지털 논리디지털 논리제제 44 강강 . . 디지털 논리디지털 논리

1

Page 2: 제4강 명제와 논리-정보

PerelmanPerelman

2

http://englishrussia.com/index.php/2007/06/15/perelman-in-a-subway/

Page 3: 제4강 명제와 논리-정보

0. 0. 개요개요

3

HIGH

LOWLOW

HIGH

+5

+3.5

+0.8

0

전압 [V]

+2.5

+1.5

출력신호 입력신호

Page 4: 제4강 명제와 논리-정보

1. 1. 부울 대수의 개념부울 대수의 개념

부울 대수와 명제 논리 집합 이론

• 수학적 대상을 원소로 하는 집합• 집합의 원소에 대해 정의된 연산 (operation) 의 집합• 집합의 여러가지 법칙

명제이론 - 논리

• 참과 거짓• 다양한 연산자 이용 :

• 참과 거짓만 갖은 여러가지 법칙

[ 참고 ]• 부울 대수는 1854 년 영국의 수학자 부울 (George Boole: 1815~1864) 에 의해 수학적 논리 형태로 소개되어 , 논리회로의 설계를 비롯한 중요한 컴퓨터 분야에 응용되고 있음• 집합 B 의 원소인 1 과 0 은 명제와 논리에서 각각 T( 참 ; true) 와 F( 거짓 ; false) 에 대응하며 , 집합 O 의 원소는 집합의 연산과 논리의 연산을 포괄하는 개념임

[ 참고 ]• 부울 대수는 1854 년 영국의 수학자 부울 (George Boole: 1815~1864) 에 의해 수학적 논리 형태로 소개되어 , 논리회로의 설계를 비롯한 중요한 컴퓨터 분야에 응용되고 있음• 집합 B 의 원소인 1 과 0 은 명제와 논리에서 각각 T( 참 ; true) 와 F( 거짓 ; false) 에 대응하며 , 집합 O 의 원소는 집합의 연산과 논리의 연산을 포괄하는 개념임

Page 5: 제4강 명제와 논리-정보

1. 1. 부울 대수의 개념부울 대수의 개념

부울 대수 (Boolean Algebra) 란 ? 대수계 (Algebraic system) 의 구성요소

• 수학적 대상을 원소로 하는 집합• 집합의 원소에 대해 정의된 연산 (operation) 의 집합• 연산이 만족하는 기본적인 법칙으로 구성된 공리 (axiom) 의 집합

부울 대수의 정의 : (B, O, A)= (B,+, ,’, 0,1)

• B 는 2 진수를 표현하는 단위 숫자의 집합 {0, 1}

• O 는 B 에 적용되는 연산의 집합 ( 예 : {+( 부울합 ), ( 부울곱 ), ’( 보수 )})

• Commutative laws: a + b = b + a, a C b=b a• Distributive laws: a +(b c)=(a+b) (a+c), a (b+c)=ab+ac• Identity laws: a +0=a, a1=a

• Complement laws: a+ a’=1, aa’=0

Page 6: 제4강 명제와 논리-정보

1. 1. 부울 대수의 개념부울 대수의 개념

부울 연산자 (Boolean Operators) 부울합 (Boolean sum)

• 부울합은 + ( 또는 ∨ , OR) 로 표기하며 , 이항 연산 (binary operation) 임

• 연산 규칙 x + y

0

1

1

x y

0 0

0 1

1 0

1 1 1

부울곱 (Boolean product)

• 부울곱은 ( 또는 ∧ , AND) 로 표기하며 , 이항 연산임

• 연산 규칙 x y

0

0

0

x y

0 0

0 1

1 0

1 1 1

Page 7: 제4강 명제와 논리-정보

1. 1. 부울 대수의 개념부울 대수의 개념

부울 연산자 ( 계속 )

보수 (Complementation)

• 보수는 ’ ( 또는 ~, NOT) 로 표기하며 , 단항 연산 (unary operation) 임

• 연산 규칙x x’

0 1

1 0

연산자 우선순위 (Precedence)

• 괄호 ≫ NOT(’) ≫ AND() ≫ OR(+)• 예제

① x + y z = x + (y z)

≠ (x + y) z

② x y’ = x (y’)

≠ (x y)’

= x + yz

[ 참고 ] 특별히 혼돈이 없는 경우에 AND() 기호는 생략이 가능함

[ 참고 ] 특별히 혼돈이 없는 경우에 AND() 기호는 생략이 가능함

예제 – 다음 부울 연산의 결과는 ?

• 1 + 1 = 1

• 1’ + 0 = 0 + 0 = 0

• 0 + 0’ = 0 + 1 = 1

• 1 1’ = 1 0 = 0

• (1 1)’ = 1’ = 0

• 0 + 1’ 1 = 0 + (0 1) = 0 + 0 = 0

Page 8: 제4강 명제와 논리-정보

2. 2. 부울 대수의 법칙부울 대수의 법칙

부울 대수 법칙 (Laws of Boolean Algebra)

종류 기본법칙 비고 교환법칙

(commutative laws) 1) x + y = y + x 2) xy = yx

멱등법칙(idempotent laws)

9) x + x = x10) xx = x

분배법칙(distributive laws)

3) x(y + z) = xy + xz 4) x + yz = (x + y)(x + z)

4) 는 일반 수식에서는 성립하지 않음

항등법칙(identity laws)

5) x + 0 = x 6) x 1 = x

+ 에 대한 항등원 0 이 존재하며 , 에 대한 항등원 1 이 존재함

보법칙(complement laws)

7) x + x’ = 1 8) xx’ = 0

[ 참고 ] 멱등법칙 9) 의 증명 x + x = (x + x) 1 항등법칙 6) 에 의해서

= (x + x)(x + x’) 보법칙 7) 에 의해서 = x + xx’ 분배법칙 4) 에 의해서 = x + 0 보법칙 8) 에 의해서 = x 항등법칙 5) 에 의해서

[ 참고 ] 멱등법칙 9) 의 증명 x + x = (x + x) 1 항등법칙 6) 에 의해서

= (x + x)(x + x’) 보법칙 7) 에 의해서 = x + xx’ 분배법칙 4) 에 의해서 = x + 0 보법칙 8) 에 의해서 = x 항등법칙 5) 에 의해서

Page 9: 제4강 명제와 논리-정보

2. 2. 부울 대수의 법칙부울 대수의 법칙

부울 대수 법칙 ( 계속 )

종류 기본법칙 비고

지배법칙(dominance laws)

11) x + 1 = 112) x 0 = 0

[ 증명 ] 11) x + 1 = 1x + 1 = 1 (x + 1) 항등법칙 6)

= (x + x’)(x + 1) 보법칙 7)= x + x’ 1 분배법칙 4)= x + x’ 항등법칙 6)= 1 보법칙 7)

이중보수법칙(double complement laws)

13) (x’)’ = x

결합법칙(associative laws)

14) x + (y + z) = (x + y) + z15) x(yz) = (xy)z

드모르강법칙(De Morgan’s laws)

16) (x + y)’ = x’y’17) (xy)’ = x’ + y’

(x1 + x2 + … + xn)’ = x1’ x2’ … xn’(x1 x2 … xn)’ = x1’ + x2’ + … + xn’

흡수법칙(absorption laws)

18) x + xy = x19) x(x + y) = x

[ 증명 ] 18) x + xy = xx + xy = x 1 + xy 항등법칙 6)

= x(1 + y) 분배법칙 3)= x(y + 1) 교환법칙 1)= x 1 지배법칙 11)= x 항등법칙 6)

Page 10: 제4강 명제와 논리-정보

x’ + xy’

1

1

1

0

부울 함수 (Boolean Function) 정의

3. 3. 부울 함수와 부울식부울 함수와 부울식

• 집합 B = {0, 1} 일 때 , 부울 함수 (Boolean function) f : Bn → B 는 Bn 내의 임의의 n- 튜플 {(x1, x2, …, xn) | xi ∈ B, 1≤i≤n} 에서 B 로 사상되는 함수임

부울 변수 (Boolean variable) 인 xi 는 0 또는 1 의 값을 가지므로 비트 (bit; binary digit) 라고도 함

정의역은 곱집합 (Cartesian product) 인 Bn = {0, 1}1 x {0, 1}2 x … x {0, 1}n 이고 , 치역은 B = {0, 1} 임

진리표 (truth table)

• 부울 함수의 n 개의 부울 변수는 2n 개의 0 과 1 의 조합을 가질 수 있으므로 2n 개의 열 (column) 을 갖는 진리표를 구성하여 함수 값을 표현할 수 있음

• 예제 – 부울 함수 f(x, y) = x’ + xy’ 에 대한 진리표를 나타내면 ?

x y

0 0

0 1

1 0

1 1

x’

1

1

0

0

y’

1

0

1

0

xy’

0

0

1

0

Page 11: 제4강 명제와 논리-정보

부울 함수 ( 계속 )

3. 3. 부울 함수와 부울식부울 함수와 부울식

동치 함수 (Equal function)

• n 개의 변수로 구성된 부울 함수 f 와 g 의 모든 변수값 b1, b2, …, bn 에 대해 f(b1, b2, …, bn) = g(b1, b2, …, bn) 이면 , f 와 g 는 동치 (equal) 라고 하고 f = g 로 표현함

• 예제 – 부울 함수 f(x, y, z) = (x + y + z)’ 와 g(x, y, z) = x’ y’ z’ 에 대해서 f 와 g 가 동치 ( 즉 , f = g) 임을 진리표를 사용하여 보이면 ?

x y

0 0

0 0

0 1

0 1

z

0

1

0

1

1 0

1 0

1 1

1 1

0

1

0

1

x + y

0

0

1

1

1

1

1

1

x + y + z

0

1

1

1

1

1

1

1

(x + y + z)’

1

0

0

0

0

0

0

0

x’ y’

1 1

1 1

1 0

1 0

z’

1

0

1

0

0 1

0 1

0 0

0 0

1

0

1

0

x’ y’

1

1

0

0

0

0

0

0

x’ y’ z’

1

0

0

0

0

0

0

0

f = g

Page 12: 제4강 명제와 논리-정보

부울 함수 ( 계속 )

3. 3. 부울 함수와 부울식부울 함수와 부울식

보함수 (Complementary function)

• 부울 함수 f 의 모든 변수값 b1, b2, …, bn 에 대해 항상 그 결과가 보수의 값을 갖는 함수 f’ 를 f 의 보함수 (complementary function) 라고 함 즉 , f’(b1, b2, …, bn) = (f(b1, b2, …, bn))’ 가 성립함

• 예제 – 부울 함수 f(x, y, z) = x’ + yz 의 보함수는 f’(x, y, z) = xy’ + xz’ 임을 진리표를 사용하여 보이면 ?

x y

0 0

0 0

0 1

0 1

z

0

1

0

1

1 0

1 0

1 1

1 1

0

1

0

1

x’

1

1

1

1

0

0

0

0

yz

0

0

0

1

0

0

0

1

x’ + yz

1

1

1

1

0

0

0

1

y’

1

1

0

0

1

1

0

0

z’

1

0

1

0

1

0

1

0

xy’ + xz’

0

0

0

0

1

1

1

0

xy’

0

0

0

0

1

1

0

0

xz’

0

0

0

0

1

0

1

0

f’(x, y, z) = (f(x, y, z))’

Page 13: 제4강 명제와 논리-정보

부울식이 아님 (2 는 집합 B 의 원소가 아님 )

3. 3. 부울 함수와 부울식부울 함수와 부울식

부울식 (Boolean Expression) 정의

• 부울 대수 (B, O, A) 에서 부울 변수 x1, x2, …, xn 에 대한 부울식은 다음과같이 재귀적으로 정의됨

0, 1, x1, x2, …, xn 은 각각 부울식임

E1 과 E2 가 부울식이면 , (E1), E1’, E1 + E2, E1 E2 도 각각 부울식임

• 부울 함수를 구성하는 수식을 부울식 (Boolean expression) 이라고 함

예제

• 다음 중 부울 변수 x1, x2, x3 에 대한 부울식을 고르면 ?

0 1 + x1 + (x2 x3’)

(x1’ + 1)’ (x1 + 0)

(0 + 2) x1

x1 + x2 + x3

(1 – 0) + (x1 + x2)’

부울식임

부울식임

부울식임

부울식이 아님 (– 는 부울 연산자가 아님 )

Page 14: 제4강 명제와 논리-정보

3. 3. 부울 함수와 부울식부울 함수와 부울식

쌍대성 원리 (Principles of Duality) 정의

• 집합 ( 제 2 강 참고 ) 과 마찬가지로 부울 대수에서도 다음 규칙을 적용하여쌍대 (dual) 가 되는 부울식을 구성할 수 있음

부울식에서 부울곱 () 은 부울합 (+) 으로 , 부울합은 부울곱으로 변경 부울식에서 0 은 1 로 , 1 은 0 으로 변경• 부울 대수의 유효한 법칙에 대해서 그 쌍대가 되는 법칙도 항상 유효함

예제

• 다음 각 부울식의 쌍대를 구하면 ?

1 + xy 0 (x + y)

(xy)’ + x (x + y)’ x

0 + (x + yz) 1 (x (y + z))

x + xy = x x(x + y) = x

(x’ + z)(xy’ + z) = z x’z + (x + y’)z = z

Page 15: 제4강 명제와 논리-정보

4. 4. 최소항최소항 //최대항최대항

표현 가능한 부울 함수의 개수 문제

• n 개의 부울 변수로 만들 수 있는 부울 함수는 몇 개나 되는가 ?( 단 , 동치인 함수는 하나로 카운트함 )

22n 개

이유

• n 개의 부울 변수가 가질 수 있는 값의 조합 c = 2n 가지임• c 가지의 경우에 대해 진리표에서 표현할 수 있는 결과의 개수는

2c (= 22n) 개임

예제

• 2 개의 부울 변수 x, y 로 만들 수 있는 부울 함수의 개수는 ?

222 = 24 = 16

( 개 )• 가능한 부울 함수를 모두 나타내면 ?

( 뒷장에 계속 )

Page 16: 제4강 명제와 논리-정보

표현 가능한 부울 함수의 개수 ( 계속 )

예제 ( 계속 )

x

0

0

1

1

y

0

1

0

1

f0

0

0

0

0

f1

0

0

0

1

f2

0

0

1

0

f3

0

0

1

1

f4

0

1

0

0

f5

0

1

0

1

f6

0

1

1

0

f7

0

1

1

1

f8

1

0

0

0

f9

1

0

0

1

f10

1

0

1

0

f11

1

0

1

1

f12

1

1

0

0

f13

1

1

0

1

f14

1

1

1

0

f15

1

1

1

1

f0(x, y) = 0

f1(x, y) = xy

f2(x, y) = xy’

f3(x, y) = xy’ + xy

f4(x, y) = x’y

f5(x, y) = x’y + xy

f6(x, y) = x’y + xy’

f7(x, y) = x’y + xy’ + xy

f8(x, y) = x’y’

f9(x, y) = x’y’ + xy

f10(x, y) = x’y’ + xy’

f11(x, y) = x’y’ + xy’ + xy

f12(x, y) = x’y’ + x’y

f13(x, y) = x’y’ + x’y + xy

f14(x, y) = x’y’ + x’y + xy’

f15(x, y) = 1

4. 4. 최소항최소항 //최대항최대항

Page 17: 제4강 명제와 논리-정보

최소항 (Minterms)/ 최대항 (Maxterms) 최소항

• 부울 변수의 곱으로만 표현되는 부울식을 최소항 (minterms) 이라고 함

• 최소항과 최대항은 서로 보수의 관계가 성립함( 즉 , 최소항을 mi, 최대항을 Mi 라고 할 때 , mi’ = Mi 임 ) 예 : (xy’z)’ = x’ + y + z’

• n 개의 부울 변수 x1, x2, …, xn 에 대한 최소항의 형식 y1 y2 … yn ( 단 , yi = xi 또는 yi = (xi)’ 이며 , 1≤i≤n)

• 부울 변수의 값을 대입하면 최소항의 결과는 1 이 됨( 예 : 부울 변수의 값이 x = 1, y = 0, z = 1 일 때 , 최소항은 xy’z 로 표현함 )

최대항

• 부울 변수의 합으로만 표현되는 부울식을 최대항 (maxterms) 이라고 함

• n 개의 부울 변수 x1, x2, …, xn 에 대한 최대항의 형식 y1 + y2 + … + yn ( 단 , yi = xi 또는 yi = (xi)’ 이며 , 1≤i≤n)

• 부울 변수의 값을 대입하면 최대항의 결과는 0 이 됨 ( 예 : 부울 변수의 값이 x = 1, y = 0, z = 1 일 때 , 최대항은 x’ + y + z’ 로 표현함 )

4. 4. 최소항최소항 //최대항최대항

Page 18: 제4강 명제와 논리-정보

최소항 /최대항 ( 계속 )

예제

• 3 개의 부울 변수 x, y, z 에 대한 최소항과 최대항을 구하면 ?

x y

0 0

0 0

0 1

0 1

z

0

1

0

1

1 0

1 0

1 1

1 1

0

1

0

1

최소항x’y’z’ (m0)

x’y’z (m1)

x’yz’ (m2)

x’yz (m3)

xy’z’ (m4)

xy’z (m5)

xyz’ (m6)

xyz (m7)

최대항x + y + z (M0)

x + y + z’ (M1)

x + y’ + z (M2)

x + y’ + z’ (M3)

x’ + y + z (M4)

x’ + y + z’ (M5)

x’ + y’ + z (M6)

x’ + y’ + z’ (M7)

• 최소항과 최대항은 진리표에 대응하는 부울 함수를 정규화된 형식으로표현하기 위하여 주로 사용함

• n 개의 변수에 대한 진리표는 2n 개의 최소항과 2n 개의 최대항을 가짐

특징

4. 4. 최소항최소항 //최대항최대항

Page 19: 제4강 명제와 논리-정보

5. 5. 곱의 합곱의 합 //합의 곱합의 곱

곱의 합 (Sum of Products)/ 합의 곱 (Product of Sums) 곱의 합

• 모든 부울 함수는 결과가 1 인 최소항들의 부울합으로 표현할 수 있으며 ,이런 표현을 곱의 합 (sum of products) 형식이라고 함 논리합 정형 (disjunctive normal form) 이라고도 함

• 예 : f(x, y, z) = x’y’z + xy’z’ + xyz

합의 곱

• 모든 부울 함수는 결과가 0 인 최대항들의 부울곱으로 표현할 수 있으며 ,이런 표현을 합의 곱 (product of sums) 형식이라고 함 논리곱 정형 (conjunctive normal form) 이라고도 함

• 예 : f(x, y, z) = (x + y + z’)(x’ + y + z)(x’ + y’ + z’)

[ 참고 ] 정규형 (Canonical form)• 곱의 합 또는 합의 곱으로 표현된 부울식을 정규형 (canonical form) 이라고 하며 ,

그렇지 않은 식은 비정규형이라고 함

[ 참고 ] 정규형 (Canonical form)• 곱의 합 또는 합의 곱으로 표현된 부울식을 정규형 (canonical form) 이라고 하며 ,

그렇지 않은 식은 비정규형이라고 함

Page 20: 제4강 명제와 논리-정보

예제 진리표에 대한 부울 함수 구하기

• 3 개의 부울 변수 x, y, z 에 대한 진리표가 다음과 같을 때 부울 함수f(x, y, z) 를 곱의 합 형식으로 표현하면 ? 또한 합의 곱 형식으로 표현하면 ?

x y

0 0

0 0

0 1

0 1

z

0

1

0

1

1 0

1 0

1 1

1 1

0

1

0

1

최소항x’y’z’ (m0)

x’y’z (m1)

x’yz’ (m2)

x’yz (m3)

xy’z’ (m4)

xy’z (m5)

xyz’ (m6)

xyz (m7)

최대항x + y + z (M0)

x + y + z’ (M1)

x + y’ + z (M2)

x + y’ + z’ (M3)

x’ + y + z (M4)

x’ + y + z’ (M5)

x’ + y’ + z (M6)

x’ + y’ + z’ (M7)

f(x, y, z)

0

1

1

0

1

1

0

0

곱의 합 형식 : f(x, y, z) = x’y’z + x’yz’ + xy’z’ + xy’z = m1 + m2 + m4 + m5 = ∑(1, 2, 4, 5)

합의 곱 형식 : f(x, y, z) = (x + y + z)(x + y’ + z’)(x’ + y’ + z)(x’ + y’ + z’) = M0M3M6M7 = ∏(0, 3, 6, 7)

5. 5. 곱의 합곱의 합 //합의 곱합의 곱

Page 21: 제4강 명제와 논리-정보

예제 ( 계속 ) 곱의 합 / 합의 곱 형식이 동치임을 증명

• 곱의 합 형식인 f(x, y, z) = x’y’z + x’yz’ + xy’z’ + xy’z 과 합의 곱 형식인f(x, y, z) = (x + y + z)(x + y’ + z’)(x’ + y’ + z)(x’ + y’ + z’) 이 동치임을 보이면 ?

[ 증명 ]

곱의 합 형식인 f(x, y, z) = x’y’z + x’yz’ + xy’z’ + xy’z = ∑(1, 2, 4, 5) 일 때 ,그 보함수는 f’(x, y, z) = x’y’z’ + x’yz + xyz’ + xyz = ∑(0, 3, 6, 7) 이 됨 .

보함수의 정의에 따라 f(x, y, z) = (f’(x, y, z))’ 이므로 (f’(x, y, z))’ = (x’y’z’ + x’yz + xyz’ + xyz)’

드모르강 법칙을 적용하면 = (x’y’z’)’ (x’yz)’ (xyz’)’ (xyz)’ = (x + y + z) (x + y’ + z’) (x’ + y’ + z) (x’ + y’ + z’)

따라서 합의 곱 형식인 f(x, y, z) = ∏(0, 3, 6, 7) 이 성립함

5. 5. 곱의 합곱의 합 //합의 곱합의 곱

Page 22: 제4강 명제와 논리-정보

예제 ( 계속 ) 일반적인 부울 함수의 정규형 변환

• 부울 함수 f(x, y, z) = x’y + z’ 를 정규형 ( 즉 , 곱의 합 형식과 합의 곱 형식 )으로표현하면 ?x y

0 0

0 0

0 1

0 1

z

0

1

0

1

1 0

1 0

1 1

1 1

0

1

0

1

최소항x’y’z’ (m0)

x’y’z (m1)

x’yz’ (m2)

x’yz (m3)

xy’z’ (m4)

xy’z (m5)

xyz’ (m6)

xyz (m7)

최대항x + y + z (M0)

x + y + z’ (M1)

x + y’ + z (M2)

x + y’ + z’ (M3)

x’ + y + z (M4)

x’ + y + z’ (M5)

x’ + y’ + z (M6)

x’ + y’ + z’ (M7)

f(x, y, z)

1

0

1

1

1

0

1

0

x’y

0

0

1

1

0

0

0

0

x’

1

1

1

1

0

0

0

0

곱의 합 형식 : f(x, y, z) = ∑(0, 2, 3, 4, 6) = m0 + m2 + m3 + m4 + m6 = x’y’z’ + x’yz’ + x’yz + xy’z’ + xyz’

합의 곱 형식 : f(x, y, z) = ∏(1, 5, 7) = M1M5M7 = (x + y + z’)(x’ + y + z’)(x’ + y’ + z’)

z’

1

0

1

0

1

0

1

0

5. 5. 곱의 합곱의 합 //합의 곱합의 곱

Page 23: 제4강 명제와 논리-정보

6. 6. 논리 게이트논리 게이트

논리 게이트 (Logic Gate) 란 ? 정의

• 디지털 신호를 갖는 전자 회로를 표현하는 가장 기본이 되는 단위로서하나 이상의 입력과 하나의 출력을 갖는 장치를 논리 게이트 (logic gate)라고 함

• 부울 대수의 Bn 에서 B 로의 함수 ( 여기서 B = {0, 1} 임 ) 로 표현이 가능함

종류

• AND 게이트• OR 게이트• NOT 게이트• NAND(NOT-AND) 게이트• NOR(NOT-OR) 게이트• XOR(Exclusive-OR) 게이트• XNOR(Exclusive-NOR) 게이트• Buffer 게이트

Page 24: 제4강 명제와 논리-정보

6. 6. 논리 게이트논리 게이트

AND 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 xy 를 출력으로 얻는 게이트

진리표

x

yxy

x y

0 0

0 1

1 0

1 1

입력

xy

0

0

0

1

출력

다이어그램

xy = 1 if x = y = 1

0 otherwise

x1x2…xn

x1x2

xn

∙∙∙

다중입력 AND 게이트

Page 25: 제4강 명제와 논리-정보

6. 6. 논리 게이트논리 게이트

OR 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 x + y 를 출력으로 얻는 게이트

진리표

x y

0 0

0 1

1 0

1 1

입력

x + y

0

1

1

1

출력

다이어그램

x + y = 0 if x = y = 0

1 otherwise

x

yx + y x1+x2+…+xn

x1x2

xn

∙∙∙

다중입력 OR 게이트

Page 26: 제4강 명제와 논리-정보

6. 6. 논리 게이트논리 게이트

NOT 게이트 정의

• 임의의 x {0, 1}∈ 를 입력하여 x’ 를 출력으로 얻는 게이트

진리표

x

0

1

입력

x’

1

0

출력

다이어그램

x’ = 1 if x = 0

0 if x = 1

x x’

• 인버터 (inverter) 라고도 함

Page 27: 제4강 명제와 논리-정보

NAND 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 x↑y = (xy)’ 를 출력으로 얻는 게이트

진리표

x y

0 0

0 1

1 0

1 1

입력

x↑y

1

1

1

0

출력

다이어그램

x↑y = 0 if x = y = 1

1 otherwise

x

yx↑y

6. 6. 논리 게이트논리 게이트

x

yx’ + y’

동치인 NAND 게이트

Page 28: 제4강 명제와 논리-정보

NOR 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 x↓y = (x + y)’ 를 출력으로 얻는 게이트

진리표

x y

0 0

0 1

1 0

1 1

입력

x↓y

1

0

0

0

출력

다이어그램

x↓y = 1 if x = y = 0

0 otherwise

6. 6. 논리 게이트논리 게이트

x

yx↓y

x

yx’y’

동치인 NOR 게이트

Page 29: 제4강 명제와 논리-정보

XOR 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 x y = x’y + xy’ 를 출력으로 얻는 게이트

진리표

x y

0 0

0 1

1 0

1 1

입력

x y

0

1

1

0

출력

다이어그램

6. 6. 논리 게이트논리 게이트

x y = 0 if x = y

1 otherwise

x

yx y

Page 30: 제4강 명제와 논리-정보

XNOR 게이트 정의

• 임의의 x, y {0, 1}∈ 를 입력하여 x y = x’y’ + xy 를 출력으로 얻는 게이트

진리표

x y

0 0

0 1

1 0

1 1

입력

x y

1

0

0

1

출력

다이어그램

6. 6. 논리 게이트논리 게이트

x y = 1 if x = y

0 otherwise

x

yx y

Page 31: 제4강 명제와 논리-정보

Buffer 게이트 정의

6. 6. 논리 게이트논리 게이트

• 임의의 x {0, 1}∈ 를 입력하여 x 를 그대로 출력으로 얻는 게이트

진리표

x

0

1

입력

x

0

1

출력

다이어그램

x = 1 if x = 1

0 if x = 0

x x

• 입력 시간을 지연시키는데 사용됨

Page 32: 제4강 명제와 논리-정보

논리 회로 (Logic Circuit) 란 ? 정의

7. 7. 논리 회로논리 회로

• 논리 게이트의 조합으로 구성된 회로를 논리 회로 (logic circuit) 라고 함• 모든 부울 함수는 논리 회로로 변환이 가능함

부울 함수의 논리 회로 표현 방법

• 합의 곱 (product of sums) 형식 다수의 OR 게이트가 하나의 AND 게이트에 연결되는 형태로 표현함

• 곱의 합 (sum of products) 형식 다수의 AND 게이트가 하나의 OR 게이트에 연결되는 형태로 표현함

[ 참고 ]• 여러 게이트가 하나의 입력을 공유하면 입력선을 분기하여 표현하기도 함

[ 참고 ]• 여러 게이트가 하나의 입력을 공유하면 입력선을 분기하여 표현하기도 함

Page 33: 제4강 명제와 논리-정보

예제 곱의 합 형식의 논리 회로 표현

7. 7. 논리 회로논리 회로

• 부울 함수 f(x, y) = xy + xy’ 를 논리 회로로 표현하면 ?

또는x

yxy + xy’

x

y

xy

x

y xy’

xy + xy’

Page 34: 제4강 명제와 논리-정보

예제 ( 계속 )

합의 곱 형식의 논리 회로 표현

7. 7. 논리 회로논리 회로

• 부울 함수 f(x, y) = (x + y)(x’ + y) 를 논리 회로로 표현하면 ?

또는

x

y x’ + y

x

y

x + y

(x + y)(x’ + y)

x

y(x + y)(x’ + y)

Page 35: 제4강 명제와 논리-정보

예제 ( 계속 )

논리 회로의 부울 함수 표현

7. 7. 논리 회로논리 회로

• 다음 논리 회로를 부울 함수로 표현하면 ?

w’x’y

(w’x’y)’(w’x’y)’y

z

(w’x’y)’y + (w’x’y)’ + z’

f(w, x, y, z) = (w’x’y)’y + (w’x’y)’ + z’

w

x

y

Page 36: 제4강 명제와 논리-정보

완전 연산자 집합 (Complete Set of Operators) 정의

8. 8. 완전 연산자 집합완전 연산자 집합

• 모든 부울 함수를 표현하기에 충분한 연산자의 집합

• 예 : {(AND), +(OR), ’(NOT)} [ 이유 ] 모든 부울 함수는 곱의 합 / 합의 곱 형식으로 표현이 가능하므로

예제

• 집합 {(AND), ’(NOT)} 가 완전 연산자 집합임을 보이면 ?

[ 증명 ] +(OR) 를 {, ’} 만으로 표현이 가능한지 증명함부울식 x + y 에 대해서 이중보수법칙과 드모르강법칙을 적용하면x + y = ((x + y)’)’ = (x’ y’)’ 이 성립함즉 , 모든 부울 함수에서 + 는 과 ’를 결합하여 표현할 수 있으므로{, ’} 는 완전 연산자 집합임

[ 참고 ]• {, ’} 과 마찬가지로 {+, ’} 도 완전 연산자 집합임• 완전 연산자 집합은 실제 전자 회로를 구성할 때 사용되는 게이트의 종류를 최소화하는데 도움이 됨

[ 참고 ]• {, ’} 과 마찬가지로 {+, ’} 도 완전 연산자 집합임• 완전 연산자 집합은 실제 전자 회로를 구성할 때 사용되는 게이트의 종류를 최소화하는데 도움이 됨

Page 37: 제4강 명제와 논리-정보

완전 연산자 집합 {NAND}/{NOR} 정의

• 모든 부울 함수는 NAND(NOT-AND; ↑) 또는 NOR(NOT-OR; ↓) 만을사용하여 표현이 가능함

증명

• 집합 {↑(NAND)} 와 {↓(NOR)} 가 완전 연산자 집합임을 보이면 ?

우선 과 ’를 ↑만으로 표현이 가능한지 증명함

따라서 {↑} 는 완전 연산자 집합임

NAND 의 정의인 x↑y = (x y)’ 와 멱등법칙인 x x = x 를 적용하면 x↑x = (x x)’ = x’ 가 성립함 . 즉 , x’ = x↑x 임또한 x y = (x↑y)’ = (x↑y)↑(x↑y) 가 성립함

마찬가지로 + 과 ’를 ↓만으로 표현이 가능한지 증명함

따라서 {↓} 는 완전 연산자 집합임

NOR 의 정의인 x↓y = (x + y)’ 와 멱등법칙 x + x = x 를 적용하면 x↓x = (x + x)’ = x’ 가 성립함 . 즉 , x’ = x↓x 임또한 x + y = (x↓y)’ = (x↓y)↓(x↓y) 가 성립함

8. 8. 완전 연산자 집합완전 연산자 집합

Page 38: 제4강 명제와 논리-정보

완전 연산자 집합 {NAND}/{NOR} ( 계속 )

예제

• 진리표를 사용하여 x’ = x↑x 와 x y = (x↑y)↑(x↑y) 가 성립함을 보이면 ?

8. 8. 완전 연산자 집합완전 연산자 집합

x

0

1

x’

1

0

x↑x

1

0

x y

0 0

0 1

1 0

1 1

x y

0

0

0

1

x↑y

1

1

1

0

(x↑y)↑(x↑y)

0

0

0

1

x’ = x↑x

x y = (x↑y)↑(x↑y)

Page 39: 제4강 명제와 논리-정보

부울 함수의 간소화 (Simplifying Boolean Expression) 정의

9. 9. 부울 함수의 간소화부울 함수의 간소화

• 동치인 부울 함수가 있을 때 , 복잡한 것보다는 간소화된 것을 이용한전자 회로의 구성이 게이트의 수를 줄일 수 있어서 더 효율적임

간소화 방법

• 부울 대수의 기본 법칙을 이용하는 방법

• 카르노 맵 (Karnaugh map) 을 이용하는 방법

곱의 합 ( 또는 합의 곱 ) 형식으로 표현된 부울 함수를 K-map 이라는 특수한 행렬로 표시함

인간의 패턴 매칭 (pattern matching) 능력을 사용하여 가장 간단한 표현을 결정함

[ 제 11 강 ] 에서 배운 다양한 부울 대수의 기본 법칙을 적용하여 간소화함 적용할 법칙의 선택이 어렵고 , 가장 간소화된 것인지 확인하기 힘듬

• 부울 함수의 간소화란 부울 함수의 표현에 사용되는 부울 변수의 개수와부울 연산자의 개수를 최소한으로 줄이는 것을 의미함

Page 40: 제4강 명제와 논리-정보

부울 대수의 법칙을 이용한 간소화 예제

9. 9. 부울 함수의 간소화부울 함수의 간소화

• 부울 함수 f(x, y, z) = xyz + xy’z + xyz’ + x’yz + xy’z’ 를 부울 대수의 기본 법칙을사용하여 간소화시키면 ?

f(x, y, z) = xyz + xy’z + xyz’ + x’yz + xy’z’

= xyz + xy’z + xyz’ + x’yz + (xy’z’ + xy’z’) 멱등법칙

= xyz + xy’(z + z’) + xz’(y + y’) + x’yz 교환법칙 , 분배법칙

= xyz + xy’ 1 + xz’ 1 + x’yz 보법칙

= xyz + xy’ + xz’ + x’yz 항등법칙

= xyz + x(y’ + z’) + x’yz 분배법칙

= xyz + x(yz)’ + x’yz 드모르강법칙

= (xyz + xyz) + x(yz)’ + x’yz 멱등법칙

= x[yz + (yz)’] + (x + x’)yz 교환법칙 , 분배법칙

= x 1 + 1 yz 보법칙

= x + yz 항등법칙

Page 41: 제4강 명제와 논리-정보

카르노 맵 (Karnaugh Map) 정의

10. 10. 카르노 맵카르노 맵

• 부울 함수를 최소로 간소화하기 위해 사용되는 부울 행렬• 1953 년 Bell Lab 의 전기통신 공학자인 Maurice Karnaugh 가 고안함

간소화 방법

• 주로 2~6 개의 변수를 가진 부울 함수에 적용됨 ( 이론상으로는 제한이 없음 )

• 2- 변수 맵은 2x2 행렬 , 3- 변수 맵은 2x4 행렬 , 4- 변수 맵은 4x4 행렬임• 행렬은 인접하는 원소가 한 비트만 다르게 부울 변수를 조합할 수 있도록

그레이 코드 (grey code) 형식으로 구성됨• 부울 함수가 곱의 합 형식으로 표현된 경우에 최소항의 값이 1 이면 1 로

0 이면 0 으로 해당하는 행렬의 위치에 표시함• 부울 함수가 합의 곱 형식으로 표현된 경우에 최대항의 값이 1 이면 0 으로

0 이면 1 로 해당하는 행렬의 위치에 표시함• 행렬에서 인접한 1 을 2n ( 예 : 1, 2, 4, 8, …) 개의 직사각형으로 묶은 후 (

가능한 큰 그룹으로 ), 행과 열에서 공통인 변수의 곱 (AND) 으로 묶음을 표현함• 묶은 곱의 합 (OR) 형식으로 함수를 표시하면 간소화된 형식임

Page 42: 제4강 명제와 논리-정보

2- 변수 맵 (2 Variable Map) 템플릿

10. 10. 카르노 맵카르노 맵

0(y’) 1(y)

0(x’)

1(x)

• [ 제 11 강 참고 ]

x

0

0

1

1

y

0

1

0

1

f0

0

0

0

0

f1

0

0

0

1

f2

0

0

1

0

f3

0

0

1

1

f0(x, y) = 0

f0’(x, y) = 1

f1(x, y) = xy

f1’(x, y) = x’ + y’

f2(x, y) = xy’

f2’(x, y) = x’ + y

f3(x, y) = xy’ + xy = x

f3’(x, y) = x’

0 0

0 0

0(y’) 1(y)

0(x’)

1(x)

f0

0 0

0 1

0(y’) 1(y)

0(x’)

1(x)

f1

0 0

1 0

0(y’) 1(y)

0(x’)

1(x)

f2

0 0

1 1

0(y’) 1(y)

0(x’)

1(x)f3

부울 함수의 표현

Page 43: 제4강 명제와 논리-정보

2- 변수 맵 ( 계속 )

10. 10. 카르노 맵카르노 맵

f6(x, y) = x’y + xy’

f6’(x, y) = x’y’ + xy

f7(x, y) = x’y+xy’+xy = x + y

f7’(x, y) = x’y’

f8(x, y) = x’y’

f8’(x, y) = x + y

f9(x, y) = x’y’ + xy

f9’(x, y) = x’y + xy’

0 1

1 0

0(y’) 1(y)

0(x’)

1(x)

f6

0 1

1 1

0(y’) 1(y)

0(x’)

1(x)

f7

1 0

0 0

0(y’) 1(y)

0(x’)

1(x)

f8

1 0

0 1

0(y’) 1(y)

0(x’)

1(x)f9

부울 함수의 표현 ( 계속 )

x

0

0

1

1

y

0

1

0

1

f4

0

1

0

0

f5

0

1

0

1

f6

0

1

1

0

f7

0

1

1

1

f8

1

0

0

0

f9

1

0

0

1

f4(x, y) = x’y

f4’(x, y) = x + y’

f5(x, y) = x’y + xy = y

f5’(x, y) = y’

0 1

0 0

0(y’) 1(y)

0(x’)

1(x)

f4

0 1

0 1

0(y’) 1(y)

0(x’)

1(x)

f5

Page 44: 제4강 명제와 논리-정보

2- 변수 맵 ( 계속 )

10. 10. 카르노 맵카르노 맵

f12(x, y) = x’y’ + x’y = x’ f12’(x, y) = x

f13(x, y) = x’y’+x’y+xy = x’ + y

f13’(x, y) = xy’

f14(x, y) = x’y’+x’y+xy’ = x’ + y’

f14’(x, y) = xy

f15(x, y) = 1

f15’(x, y) = 0

1 1

0 0

0(y’) 1(y)

0(x’)

1(x)

f12

1 1

0 1

0(y’) 1(y)

0(x’)

1(x)

f13

1 1

1 0

0(y’) 1(y)

0(x’)

1(x)

f14

1 1

1 1

0(y’) 1(y)

0(x’)

1(x)f15

부울 함수의 표현 ( 계속 )

f10(x, y) = x’y’ + xy’ = y’

f10’(x, y) = y

f11(x, y) = x’y’+xy’+xy = x + y’

f11’(x, y) = x’y

1 0

1 0

0(y’) 1(y)

0(x’)

1(x)

f10

1 0

1 1

0(y’) 1(y)

0(x’)

1(x)

f11

x

0

0

1

1

y

0

1

0

1

f10

1

0

1

0

f11

1

0

1

1

f12

1

1

0

0

f13

1

1

0

1

f14

1

1

1

0

f15

1

1

1

1

Page 45: 제4강 명제와 논리-정보

3- 변수 맵 (3 Variable Map) 템플릿

10. 10. 카르노 맵카르노 맵

000(x’y’z’)

100(xy’z’)

00(y’z’)

0(x’)

1(x)

001(x’y’z)

101(xy’z)

01(y’z)

011(x’yz)111(xyz)

11(yz)

010(x’yz’)

110(xyz’)

10(yz’)

부울 함수의 표현

• f(x, y, z) = xy’z + xyz

0

0

00(y’z’)

0(x’)

1(x)

0

1

01(y’z)

0

1

11(yz)

0

0

10(yz’)

f(x, y, z) = xz

• f(x, y, z) = ∑(2, 3, 4, 6)

0

1

00(y’z’)

0(x’)

1(x)

0

0

01(y’z)

1

0

11(yz)

1

1

10(yz’)

f(x, y, z) = x’y + xz’

Page 46: 제4강 명제와 논리-정보

3- 변수 맵 ( 계속 )

10. 10. 카르노 맵카르노 맵

부울 함수의 표현 ( 계속 )

• f(x, y, z) = ∑(0, 1, 2, 3)

1

0

00(y’z’)

0(x’)

1(x)

1

0

01(y’z)

1

0

11(yz)

1

0

10(yz’)

f(x, y, z) = x’

• f(x, y, z) = ∑(2, 3, 6, 7)

0

0

00(y’z’)

0(x’)

1(x)

0

0

01(y’z)

1

1

11(yz)

1

1

10(yz’)

f(x, y, z) = y

• f(x, y, z) = ∏(1, 3, 5, 7)

1

1

00(y’z’)

0(x’)

1(x)

0

0

01(y’z)

0

0

11(yz)

1

1

10(yz’)

f(x, y, z) = z’

Page 47: 제4강 명제와 논리-정보

3- 변수 맵 ( 계속 )

10. 10. 카르노 맵카르노 맵

부울 함수의 표현 ( 계속 )

• f(x, y, z) = ∑(0, 1, 3, 4, 5)

1

1

00(y’z’)

0(x’)

1(x)

1

1

01(y’z)

1

0

11(yz)

0

0

10(yz’)

f(x, y, z) = y’ + x’z

• f(x, y, z) = ∏(0, 2)

0

1

00(y’z’)

0(x’)

1(x)

1

1

01(y’z)

1

1

11(yz)

0

1

10(yz’)

1

1

00(y’z’)

0(x’)

1(x)

0

1

01(y’z)

1

0

11(yz)

1

1

10(yz’)

f(x, y, z) = x + z

• f(x, y, z) = ∑(0, 2, 3, 4, 5, 6)

f(x, y, z) = z’ + xy’ + x’y

Page 48: 제4강 명제와 논리-정보

4- 변수 맵 (4 Variable Map) 템플릿

10. 10. 카르노 맵카르노 맵

0000(w’x’y’z’

)0100

(w’xy’z’)

00(y’z’)

00(w’x’)

01(w’x)

0001(w’x’y’z)

0101(w’xy’z)

01(y’z)

0011(w’x’yz)

0111(w’xyz)

11(yz)

0010(w’x’yz’)

0110(w’xyz’)

10(yz’)

1100(wxy’z’)

1000(wx’y’z’)

11(wx)

10(wx’)

1101(wxy’z)1001

(wx’y’z)

1111(wxyz)1011

(wx’yz)

1110(wxyz’)1010

(wx’yz’)

부울 함수의 표현

• f(w, x, y, z) = w’x’y’z + w’x’yz + w’xy’z + w’xyz + wxy’z + wxyz + wx’y’z + wx’yz = ∑(1, 3, 5, 7, 9, 11, 13, 15) = ∏(0, 2, 4, 6, 8, 10, 12, 14)

0

0

00(y’z’)

00(w’x’)

01(w’x)

1

1

01(y’z)

1

1

11(yz)

0

0

10(yz’)

0

0

11(wx)

10(wx’)

1

1

1

1

0

0

f(w, x, y, z) = z

Page 49: 제4강 명제와 논리-정보

이산수학Discrete Mathematics

4- 변수 맵 ( 계속 )

10. 10. 카르노 맵카르노 맵

부울 함수의 표현 ( 계속 )

• f(w, x, y, z) = ∑(1, 3, 5, 6, 7, 12, 13, 14, 15)

0

0

00(y’z’)

00(w’x’)

01(w’x)

1

1

01(y’z)

1

1

11(yz)

0

1

10(yz’)

0

1

11(wx)

10(wx’)

0

1

0

1

0

1

• f(w, x, y, z) = ∏(3, 5, 8, 9, 14)

1

1

00(y’z’)

00(w’x’)

01(w’x)

1

0

01(y’z)

0

1

11(yz)

1

1

10(yz’)

0

1

11(wx)

10(wx’)

0

1

1

1

1

0

f(w, x, y, z) = w’z + wx’ + w’xy

f(w, x, y, z) = w’z’ + x’y’ + xy + wyz

[ 참고 ] 5- 변수 이상의 카르노 맵은 본 강의에서 다루지 않음[ 참고 ] 5- 변수 이상의 카르노 맵은 본 강의에서 다루지 않음

Page 50: 제4강 명제와 논리-정보

조합 논리 회로는 기억 특성을 가지고 있지 않으므로 회로의 출력은 현재 가해지는 입력의 조합에 의해서만 결정된다 .

반가산기 (half adder)

X Y S C

0 00 11 01 1

0 01 01 00 1

XY

S

C XYC

YXYXYXS

2 진수 한 자리를 더하는 회로를 반가산기라 하며 , 연산회로의 기본이 된다 .

2 개의 비트 X, Y 를 산술적으로 더하여 합 S 와 캐리 C 를 구하는 회로

11.11. 조합회로조합회로

Page 51: 제4강 명제와 논리-정보

전가산기 (full adder)

X Y Ci S C

0 0 00 0 10 1 00 1 10 0 00 0 10 1 00 1 1

0 01 01 00 11 00 10 11 1

XY S

CC i

반가산기 반가산기 i

ii

ii

iiii

CYX

CYXCYX

C XYYXC YXYX

XYCCYXCYXCYXS

ii

i

iii

iiii

XCYCXY

XYCYX

CCXYC YXYX

XYCCXYCYXYCXC

X, Y 와 밑자리에서 올라오는 Carry 까지 고려해서 3bit 를 더하여 S , C 를 구하는 회로 (2 개의 반가산기와 1 개의 OR 게이트 )

11.11. 조합회로조합회로

Page 52: 제4강 명제와 논리-정보

비교기 (comparator)

A B A>B A=B A<B

0 00 11 01 1

0 1 0 0 0 1 1 0 0 0 1 0

2 개의 수 A, B 를 비교하여 대소를 결정하는 회로

11.11. 조합회로조합회로

Page 53: 제4강 명제와 논리-정보

디코더 (decoder : 해독기 , 복조기 )

A B Y0 Y1 Y2 Y3

0 00 11 01 1

1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

2×4디코더

Y 0

Y 1

Y 2

Y 3

A

B

•N 개의 2 진 입력 신로로 부터 최대 2n 개의 출력신호를 만드는 조합회로

•디지털 데이터를 아날로그 데이터로 바꿔주는 컴퓨터 회로 ( 해독기 )

•압축된 신호를 원래 압축되기 전의 신호로 복원 한다는 의미 ( 복조기 )

•예 : 음향 시스템 ( DVD)

11.11. 조합회로조합회로

Page 54: 제4강 명제와 논리-정보

디코더의 응용

a

b

c d

e

f g

11.11. 조합회로조합회로

Page 55: 제4강 명제와 논리-정보

인코더 (encoder)

D0 D1 D2 D3 A B

1 0 0 00 1 0 00 0 1 00 0 0 1

0 0 0 1 1 0 1 1

• 디코더의 반대 기능을 가진 조합회로

• 2n 개 또는 그 이하의 입력으로 부터 N 개의 출력을 만드는 조합 회로

• 디지털 전자회로에서 어떤 부호계열의 신호를 다른 부호계열의 신호로 바꾸는 변환기

11.11. 조합회로조합회로

Page 56: 제4강 명제와 논리-정보

멀티플렉서 (multiplexer : 다중화기 - MUX )

S0 S1 Y

0 00 11 01 1

I0

I1

I2

I3

4×1MUX

I0

I1

I2

I3

Y

S 0 S 1

• 데이터 선택기 • 여러 개의 입력 신호선 (채널 ) 중 하나를 선택하여 출력선에 연결하여 주는 조합 논리회로

11.11. 조합회로조합회로

Page 57: 제4강 명제와 논리-정보

디멀티플렉서 (demultiplexer)

E S0 S1 D0 D1 D2 D3

1 0 0 00 0 10 1 00 1 1

1 1 1 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

1×4DEMUX

D 0

D 1

D 2

D 3

E

S 0 S 1

• 한 개의 입력선을 여러 개의 출력선 중에 하나를 선택하여 연결하여 준다 .

11.11. 조합회로조합회로

Page 58: 제4강 명제와 논리-정보

순서 논리 회로는 플립플롭 (flip-flop) 과 조합 논리 회로로 구성된 논리 회로를 의미

순서 논리 회로에서는 회로의 상태를 기억하는 기억 소자가 필요한데 가장 대표적인 기억 소자가 플립플롭이다 .

순서 논리 회로는 동기식 (synchronous) 과 비동기식 (asynchronous) 으로 분류

동기식 순서 논리 회로는 클록 (clock) 펄스를 사용해서 여러 개의 플립플롭을 동시에 동작

비동기식 순서 논리 회로는 클록 펄스를 사용하지 않고 플립플롭을 동작시킨다 .

기본적인 플립플롭 (SR 래치 )

S R Q

0 00 11 01 1

불변10

불안정S

R Q

Q

12.12. 순서논리회로순서논리회로

Page 59: 제4강 명제와 논리-정보

S-R 플립플롭

S R Q

0 00 11 01 1

불변10

불능 (허용 안됨 )

S

R

클럭

R

S Q

Q

D 플립플롭

S

R

클럭

Q

Q

D D Q

1 0

10

12.12. 순서논리회로순서논리회로

Page 60: 제4강 명제와 논리-정보

J-K 플립플롭

J K Q

0 00 11 01 1

불변01

토글 ( 반전 )

T 플립플롭

J

K

S

R

Q

Q

CP

RS 플립플롭에서 R=S=1 을 허용하지 않는 보완한 것이 JK 플립플롭이다 . J,K 값이 동시에 1 이 될때 원래값에 반전된다…

T Q

01

불변보수

Toggle 플립플롭이다 . JK 플립플롭의 입력을 묶어서 하나의 입력 T 로 많든 플립플롭

12.12. 순서논리회로순서논리회로

Page 61: 제4강 명제와 논리-정보

61

13.ROM13.ROM

ROM: Two dimensional array of 1's and 0's

Row is called a "word"; index is called an "address"

Width of row is called bit-width or wordsize

Address is input, selected word is output

Dec

0 n-1

Address

2 -1n

0

+5V +5V +5V +5V

Word Line 0011 Word Line 1010

Bit Lines

j

i

Page 62: 제4강 명제와 논리-정보

62

13.ROM13.ROM

F0 = A' B' C + A B' C' + A B' C

F1 = A' B' C + A' B C' + A B C

F2 = A' B' C' + A' B' C + A B' C'

F3 = A' B C + A B' C' + A B C'

address outputs

ROM 8 w ords ¥

4 bits

A B C F 0 F 1 F 2 F 3

B 0 0 1 1 0 0 1 1

Address W ord Contents A 0 0 0 0 1 1 1 1

C 0 1 0 1 0 1 0 1

F 0 0 1 0 0 1 1 0 0

F 1 0 1 1 0 0 0 0 1

F 2 1 1 0 0 1 0 0 0

F 3 0 0 0 1 1 0 1 0

by

Page 63: 제4강 명제와 논리-정보

14.ALU14.ALU

63

Page 64: 제4강 명제와 논리-정보

14.ALU(32bit)14.ALU(32bit)

64