ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다....

34
5장 부울 대수

Transcript of ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다....

Page 1: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

5장 부울 대수

Page 2: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

5.1 부울대수

ã 부울대수(boolean algebra)를 근거로 한 스위칭 이론(switching theory)은 논

리설계에 있어서 이론적인 근거가 되는 수학적 체계.

ã 부울대수

- 부울상수와 부울변수로 구성, 0과 1의 두 개 값을 가짐

- 논리레벨의 여러 정의

논리 0 False Off Low No Open Switch

논리 1 True On High Yes Closed switch

- 부울대수는 논리회로의 입력 및 출력의 상관관계를 표현하는 방법

입력의 논리 레벨에 따라 출력 결정

논리변수 표현 : A, B.. 등과 같이 문자로 표현. 값은 A=0 또는 B=1 등으로 표현

ã 부울대수의 기본 연산 : 논리동작 (logic operation)

OR, AND, NOT

ã 논리 게이트 : 입력신호에 대해 기본 논리연산(OR, AND, NOT)을 수행하는 디지털 회로는 다이오드, 트랜지스터, 저항 등을 사용하여 구성

- 부울 변수를 전자회로에서 사용할 때 실제적인 전압 레벨

0~0.8 V 논리 레벨(logic level) 0, 2~ 5V 논리 레벨 1로 표시,

0.8~2V undefined 값, 논리레벨의 천이영역(transition region)

2

Page 3: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 1입력 논리식, 2입력 논리식, 3입력 논리식

입력 출력

X Y F0 00 11 01 1

YXF =

YXF =

YXF =

YXF =

2입력 논리식

입력 출력

X Y Z F

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

ZYXF =

ZYXF =

ZYXF =

ZYXF =

ZYXF =

ZYXF =

ZYXF =

ZYXF =

3입력 논리식

입력 출력

X F01

XF =XF =

1입력 논리식

3한국기술교육대학교 전기전자통신공학부

Page 4: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

v 2입력 논리식 예

v 3입력 논리식 예

입력 출력X Y F0 0 10 1 11 0 11 1 0

입력 출력X Y Z X=1 Z0 0 0 1 00 0 1 1 1 1 10 1 0 00 1 1 1 01 0 0 1 1 11 0 1 1 1 1 1 11 1 0 1 11 1 1 1 1 1

YXF +=

X=0 또는 Y=0일 때, 1을 출력하는 논리식

ZYXF +=

Y ZY ZYX +

X=1이거나 (Y=0이고 Z=1)일 때, 1을 출력하는 논리식

4한국기술교육대학교 전기전자통신공학부

Page 5: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

5.2 부울대수 정리

Ý 단일변수에 관한 정리 (공리)

Ý Duality 성립 : 0 <-> 1, + <-> ·

5

Page 6: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

다변수 부울 대수정리

교환법칙 (9) x+y = y+x (10) x · y =y · x

결합법칙 (11) x+(y+z) (12) x(yz)

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

분배법칙 (13a) x (y + z) (13b) x + yz

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

Absorption (14a) x + xy = x (14b) x(x+y) = x

(15) x + x'y = x + y

Consensus (16a) xy+x'z+yz = xy+x'z (16b) (x+y)(x'+z)(y+z) =(x+y)(x'+z)

<사용예> 컨센서스 항

(13b) 역 유도 (x+y)(x+z) = xx+xz+xy+yz = x(1+z+y)+yz = x + yz

(14a) x + xy = x (1 + y) = x · 1 = x

(14b) x(x+y) = xx+xy = x + xy = x

(15) x+x'y =(x+x')(x+y) = 1 ·(x+y) = x+y (정리 13b)

(16a) xy+x'z+yz = xy+x'z+yz(x+x') = xy+x'z+xyz+x'yz

= xy(1+z) + x'z(1+y) = xy + x'z

6

Page 7: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

드모르강 정리

Ý DeMorgan's theorems는 변수의 합이나 곱의 형태를서로 바꾸며 식을 단순화하게 한다.

(17a) x+y = x y NOR

(17b) x y = x + y NAND

<사용예> 식 F= 를 단순화하라.

F = = (A'+C)' + (B+D')'

= (A')' C' + B' (D')' = AC' + B'D

Ý 드 모르강 정리로 간략화할 때 전체 반전기호가 없어지면서 + 기호는 . 로, . 기호는 +로 변경, 단일 변수에 대한 반전만 남을 때까지 계속

<정리증명>

7

Page 8: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

드모르강 논리게이트

좌변식: 입력변수 x 와 y를 갖는 NOR 게이트의 출력우변식: 입력변수 x 와 y를 각각 반전한 후 AND의 입력

인버트된 입력을 갖는 AND = NOR 연산

좌변식: 입력 x 와 y 의 NAND 게이트로 구성우변식: 반전된 두 입력 x 와 y를 OR 게이트 입력인버트된 입력을 갖는 OR게이트 = NAND 연산

8

Page 9: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 드모르강의 정리 예제

ZYZXZYXZYXZYX +=+=+=++ )()(

XYZYZWYZXWYZXWYZXW +=+=×+=++ )(

FEDFECFEBAFEDCBA

FEDCBAFEDCBAFEDCBA

++=×++=

×+++=××+=+++

)(

)()()(

ABCDFDEDFCECAB

ABCDFEDCAB

CDABFECDAB

CDABFECDABCDABFECDAB

+++++=

++++=

×+×+=

++++=++

))((

)(

)()())((

9한국기술교육대학교 전기전자통신공학부

Page 10: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

v 회로에서 게이트를 거칠 때마다 게이트의 출력을 적어주면서 한 단계씩출력 쪽으로 나아가면 된다.

논리회로 논리식 유도 과정

5.3 논리회로의 논리식 변환

10한국기술교육대학교 전기전자통신공학부

Page 11: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

v AND, OR, NOT을 이용하여 논리식으로부터 회로 구성

yzyxyx ++

보수 입력 사용NOT 게이트 사용

논리식의 회로 구성

))(( zyxyxf +++=

OR- AND

)( wxzvyxwzf +++=

다단계 논리회로

AND-OR

11한국기술교육대학교 전기전자통신공학부

Page 12: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

5.4 부울 함수

ã 부울 함수의 표현

Ý 2진수(0, 1), 연산자(OR, AND, NOT), 괄호, 등호 등을 사용하여 표현

ã 부울 함수의 간소화Ý 게이트 수 (term)와 게이트의 입력이 되는 변수(literal)의 수

를 줄이는 것

Ý 간소화 방법

1. 부울 함수로 표현한다.

2. 부울 대수의 항등식 규칙 등으로 간소화한다.

3. 논리회로 구성

12

Page 13: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

대수적 간소화 방법ã 항(term) 결합 : 두 개의 항을 결합하여 하나의 항으로 만든다.

ã 항 제거 : 항들을 제거하기 위하여 사용되는 정리.

ã 문자(literal) 제거 : 문자들을 제거하기 위하여 사용되는 정리.

ã 함수식의 의미가 변하지 않도록 주의하며, 적절한 항들을 함수식에 첨가

13

Page 14: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

ã 콘센서스(consensus) 정리Ý 부울 대수식에 있어서 콘센서스 항을 더해도 부울 대수식은 변하지

않는다.

Ý 부울 표현식을 최소화하는데 유리하다.

xy + xz' + yz = xy(z+z')+xz'+yz = xyz+xyz'+xz'+yz

= yz(x+1) + xz'(y+1) = yz + xz'

(예) F = x'y' + xz + yz' + y'z + xy

x'y'와 xz의 컨센선스는 y'z

yz' 와 xz 의 컨센선스는 xy

컨센선스 y'z와 xy를 생략하여 간소화

F = x'y' + xz + yz'

(예) F = (x+y)(x'+z)(y+z)

= (x+y)(x'+z)

consensus

consensus

14

Page 15: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

부울 함수의 보수ã 함수의 보수(complement of a function)구하는 방법

1. 부울 함수 F 값에서 1은 0으로, 0은 1로 바꾸어서 구할 수 있다.

2. 드모르강 정리를 이용하여 AND 연산자는 OR 연산자로, OR 연산자는 AND 연산자로 서로 바꾸고, 각 변수의 값도 1이면 0으로, 0이면 1로 바꾸어 구할 수 있다.

3. 연산자들의 쌍대를 구한 후 각 변수의 값에 보수를 취하면 된다. 함수의 쌍대는 AND 연산자와 OR 연산자를 상호 교환하고, 1과 0을 바꾸어 구할 수 있다.

F = x'y'z + xy'z' + x'z 의 보수함수 F' ?

(2) à F' = (x+y+z')(x'+y+z)(x+z')

(3) à F의 쌍대 (x'+y'+z)(x+y'+z')(x'+z)

각 변수를 보수화 F' = (x+y+z')(x'+y+z)(x+z')

15

Page 16: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

5.5 부울함수의 정형과 표준형ã 논리곱(AND게이트), 논리합(OR게이트)로 나타냄.

ã 최소항 또는 표준곱(standard product)

Ý 2개의 변수 a와 b에 대해서는 4가지 조합(a'·b', a'·b, a·b', a·b)이 가능하며, AND연산의 항으로 표시

ã 최대항 또는 표준합(standard sum)

Ý 2개의 변수 x와 y에 대해서는 4개의 조합(a+b, a+b‘, a'+b, a'+b')이 가능하며, OR연산의 항으로 표시

ã 변수의 값이 0일 때는 ( ', bar) 기호로 하고, 1일 때는 붙이지 않는다.

16

입력 출력

a b f0 0 00 1 11 0 11 1 1

abbabaf ++=Þ

진리표로부터 최소항식 표현법

2 변수 최소항

2 변수 최대항

Page 17: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

부울함수 표현형식(1) SOP 형식 (곱의 합, Sum of Products ) : standard form

- 예 : (a) ABC + A'BC' + B'

(b) AB + A'BC' + C'D' + D

2개 이상의 AND 항을 ORing ==> AND 결과들을 OR 입력

각 입력은 normal 혹은 inverted 형태로 사용

입력변수의 개수가 가변

(2) POS 형식 (합의 곱, Product of sums) : standard form

- 예 : (a) (A + B' + C)(A + C)

(b) (A + B)(C' + D)F

2개 이상의 OR 항을 ANDing

입력변수의 개수가 가변

(3) minterm 또는 standard product

n개의 변수는 0 - 2n-1의 값을 갖는 2n개의 minterm을 가짐

각 minterm은 모든 입력변수(normal/inverted)에 대하여 AND

(4) maxterm 또는 standard sum

n개의 변수는 0 - 2n-1의 값을 갖는 2n개의 maxterm을 가짐

각 maxterm은 모든 입력변수(normal/inverted)에 대하여 OR

17

Page 18: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

q 2변수 최소항의 표현 방법

q3변수 최소항의 표현 방법

a b 최소항 기호

0 0 m0

0 1 m1

1 0 m2

1 1 m3

babababa

å=++=++=

)3,2,1(

),(

321

m

mmmabbababaf

a b c 최소항 기호

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0mcbacbacbacbacbacbacbacba

1m

2m

3m

4m

5m

6m

7m

최소항 (minterm)

18한국기술교육대학교 전기전자통신공학부

Page 19: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 3변수 최소항의 표현 방법

x y z f 최소항 기호

0 0 0 10 0 1 10 1 0 00 1 1 11 0 0 01 0 1 11 1 0 01 1 1 1

0mzyxzyxzyxzyxzyxzyxzyxzyx

1m

2m

3m

4m

5m

6m

7m

xyzzyxyzxzyxzyx

mzyxf

++++=

),,,,(),,( 75310

zxyzyxzyx

mzyxf

++=

)6,4,2(),,(

zyxzyxzyxmzyxf

xyzzyxyzxzyxzyxmzyxf

++===

++++==

åå

)6,4,2(),,(

)7,5,3,1,0(),,(

xyzzyxyzxzyxzyxm

zyxzyxzyxmzyxf

++++==

++==

åå

)7,5,3,1,0(

)6,4,2(),,(

19한국기술교육대학교 전기전자통신공학부

Page 20: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

예제 5-1 다음 진리표를 이용하여 f 와 를 최소항식으로 나타내어라.

a b c f0 0 0 0 10 0 1 1 00 1 0 1 00 1 1 1 01 0 0 1 01 0 1 1 01 1 0 0 11 1 1 0 1

f

cbacbabcacbacba

mcbaf

++++=

)5,4,3,2,1(),,(

abccabcba

mcbaf

++=

)7,6,0(),,(

f

20한국기술교육대학교 전기전자통신공학부

Page 21: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 4변수 최소항의 표현 방법

a b c d 최소항 기호 a b c d 최소항 기호

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

0m

1m

2m

3m

4m

5m

6m

7m

8m

9m

10m

11m

12m

13m

14m15m

dcbadcbadcbadcbadcbadcbadcbadcba

dcbadcbadcbadcbadcbadcbadcbadcba

사용예

abcdcdbadcbadcbadcbadcba

mdcbaf

+++++=

)15,11,9,5,1,0(),,,(

21한국기술교육대학교 전기전자통신공학부

Page 22: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 최대항 표현 방법

a b c 최대항 기호

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0M

cba ++cba ++cba ++cba ++cba ++cba ++cba ++

cba ++1M

2M

3M4M

5M

6M

7M

a b 최대항 기호

0 00 11 01 1

ba +ba +ba +ba +

0M

1M

2M

3M

2변수

3변수

최대항 (maxterm)

22한국기술교육대학교 전기전자통신공학부

Page 23: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

a b c d 최대항 기호 a b c d 최대항 기호

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

0M

1M

2M

3M

4M

5M

6M

7M

8M

9M

10M

11M

12M

13M

14M

15Mdcba +++dcba +++

dcba +++

dcba +++

dcba +++

dcba +++

dcba +++

dcba +++

dcba +++dcba +++dcba +++

dcba +++

dcba +++

dcba +++

dcba +++

dcba +++

4변수 최대항

23한국기술교육대학교 전기전자통신공학부

Page 24: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

최소항과 최대항과의 관계

v 최소항은 출력이 1인 항을 SOP로 나타낸 것이고, 최대항은 출력이 0인 항을 POS로 나타낸 것이다.

v 최소항과 최대항은 상호 보수의 성질을 가진다.

Ý minterm과 maxterm의 관계mj = Mj m3 = abc = a+b+c = M3

a b c f 최소항 기호 최대항 기호 관 계

0 0 0 0 10 0 1 1 00 1 0 1 00 1 1 1 01 0 0 1 01 0 1 1 01 1 0 0 11 1 1 0 1

0mcbacbacbacbacbacbacbacba

1m

2m

3m

4m

5m

6m

7m

f

cba ++cba ++cba ++cba ++cba ++cba ++cba ++cba ++ 0M

1M

2M

3M

4M

5M

6M

7M

00 mM =

11 mM =

22 mM =

33 mM =

44 mM =

55 mM =

66 mM =

77 mM =

24한국기술교육대학교 전기전자통신공학부

Page 25: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

(5) Canonical formã 부울함수를 SOM(sum of minterms) 혹은 POM( product of

maxterms)로 표현

(a) sum of minterms

f1 = x'y' + xy' = m0 + m2

f2 = x'y'z + xyz' + xyz = m1 + m6 + m7

f3 = a'b'cd + a'bc'd + ab'cd' + abcd' = m3 + m5 + m10 + m14

f1(x,y) = ∑m(0, 2)

f2(x,y,z) =∑m(1, 6, 7)

f3(a,b,c,d) =∑m(3, 5, 10, 14)

(b) product of maxterms

f1 = (x+y+z)(x+y'+z)(x'+y'+z) = M0M2M6

f2 = (a+b+c+d')(a+b'+c+d) (a'+b+c+d') (a'+b'+c+d)

= M1M4M9M12

f1(x,y,z) = ∏M(0, 2, 6)

f2(a,b,c,d) = ∏M(1,4 , 9, 12)

25

Page 26: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

(6) Canonical form의 상호 변환

f1 = x'y'z+xyz'+xyz = m1+m6+m7

f1'= x'y'z'+ x'yz'+ x'yz+ xy'z'+ xy'z

f1 = (f1')' = ( x'y'z'+ x'yz'+ x'yz+ xy'z'+ xy'z)'

= (x+y+z)(x+y'+z)(x+y'+z')(x'+y+z)(x'+y+z')

= M0M2M3M4M5

f2 = m0 + m2 + m5 + m6

= M1M3M4M7

x y z f1 f2

0 0 0

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

0

1

0

0

0

0

1

1

1

0

1

0

0

1

1

0

26

Page 27: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

(7) Standard form과 canonical form의 변환

f1 = x + y'z = (x+y')(x+z)

= (x+y'+zz')(x+z+yy')

= (x+y'+z)(x+y'+z')(x+y+z)(x+y'+z)

= (x+y'+z)(x+y'+z')(x+y+z) = M0M2M3 ; POM

f1 = x+y'z = x(y+y')(z+z') + (x+x')y'z

= xyz + xyz' + xy'z + xy'z' + xy'z + x'y'z

= m7+m6+m5+m4+m1 ; SOM

f2 = (a + c')(a + b') = aa+ ab'+ ac' + c'b'

= a(b+b')(c+c') + ab'(c+c') + ac'(b+b') + c'b'(a+a')

= a(bc+bc'+b'c+b'c')+ab'c+ab'c'+ ...

= abc+abc'+ab'c+ab'c'+a'b'c'

27

Page 28: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

예제 5-2 다음 최대항 식을 진리표로 만들어 보고, 논리식을 구하시오.

x y z f 최대항 기호

0 0 0 00 0 1 00 1 0 10 1 1 01 0 0 11 0 1 01 1 0 11 1 1 0

0M

zyx ++

zyx ++

zyx ++

zyx ++

zyx ++

zyx ++

zyx ++

zyx ++

1M

2M

3M4M

5M

6M

7M

))()()()((

)7 5, 3, 1, 0,(),,(

zyxzyxzyxzyxzyx

Mzyxf

++++++++++=

Õ= )7 5, 3, 1, 0,(),,( Mzyxf

28한국기술교육대학교 전기전자통신공학부

Page 29: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

åÕÕå

==

==

)7 ,6 ,0()7 ,6 ,0(

)5 4, 3, 2, 1,( )5 4, 3, 2, 1,(),,(

mM

Mmcbaf

Õ

å

=

++++++++++=

××××=++++=

++++==

)5 4, 3, 2, 1,(

))()()()((

)5 4, 3, 2, 1,(),,(

M

cbacbacbacbacba

cbacbabcacbacbacbacbabcacbacba

cbacbabcacbacbamcbaf

Þ

Õ

å

=

++++++=××=++=

++==

)7 6, 0,(

))()((

)7 6, 0,(),,(

M

cbacbacbaabccabcbaabccabcba

abccabcbamcbaf

åÕÕå==

==

)5 4, ,3 ,2 ,1()5 4, ,3 ,2 ,1(

)7 6, 0,( )7 6, 0,(),,(

mM

MmcbafÞ

최소항을 부정하면최대항

최대항을 부정하면최소항

29한국기술교육대학교 전기전자통신공학부

Page 30: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã (1)식을 간소화하는 과정

(1)

(2)

(3)

(4)

xyzyxyx

xyzyxyx

xyzzzyxzzyx

xyzzyxzyxyzxzyx

xyzzyxzyxyzxzyx

++=

+×+×=

++++=

++++=

++++

11

)()(

)()(

xyzzyxzyxyzxzyx ++++

xyzyxyx ++

xzyxyx

xzyxyx

yyxzzzyxzzyx

zyxxyzzyxzyxyzxzyx

zyxxyzzyxzyxyzxzyx

++=

×+×+×=

+++++=

+++++=

+++++

111

)()()(

)()()(

xzyxyx ++

X+X=X를 이용

yzyxyx ++yzyxyx

yzyxyx

xxyzzzyxzzyx

yzxxyzzyxzyxyzxzyx

yzxxyzzyxzyxyzxzyx

++=

×+×+×=

+++++=

+++++=

+++++

111

)()()(

)()()(

X+X=X를 이용

5.6 부울 대수 법칙을 이용한 논리식의 간소화

30한국기술교육대학교 전기전자통신공학부

Page 31: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã (2)식을 간소화하는 과정

(1)

(2)

(3)

(4)

xyzzyxzyxyzxzyx ++++

xyzyxyx ++

xzyxyx ++

yzyxyx ++

xzyxyxzyxyx

zyyyxyxyzyxyxxyzyxyx

++=+×+=

+++=++=++

)(1

))(()(

yxyzyxyxzxy

yxzxxxyyxxzxyxyzyxyx

++=++×=

+++=++=++

)(1

))(()(

bababaaaaba +=+×=++=+ )(1))((abababaabaa =+=+=+ 0)(

31한국기술교육대학교 전기전자통신공학부

Page 32: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 간소화하는 과정 예

zyxxxzyx

xzzxyxyyxzyyzxzzyx

xyzzyxyzxzyxzyxmzyxf

+=

++=

++=

+++++=

++++=

å=

)(

)()()(

)7 5, 3, 1, 0,(),,(

zxzy

yyzxxxzy

zxyzyxzyx

mmzyxf

+=

+++=

++=

== åå

)()(

)6 4, 2,()7 5, 3, 1, 0,(),,(

32한국기술교육대학교 전기전자통신공학부

Page 33: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

한국기술교육대학교 전기전자통신공학부

ã 논리식의 간소화 효과Z = ABC + AB' (A'C')'

= ABC + AB'(A+C) = ABC+AB'+AB'C

= AB'(1+C)+ABC = AB'+ ABC = A(B'+BC)

= A(B'+B)(B'+C) = A(B'+C) = AB' + AC

33

Page 34: ch05 bool st - KOREATECH1.부울함수F 값에서1은0으로, 0은1로바꾸어서구할수있다. 2.드모르강정리를이용하여AND 연산자는OR 연산자로, OR 연산 자는AND

ã 2변수로 나타낼 수 있는 모든 함수의 경우

ã 2변수로 나타낼 수 있는 모든 경우의 함수 논리식

a b f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15

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

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

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

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

00 =f abf =1 baf =2 af =3

baf =4 bf =5 babaf +=6 baf +=7

baf =8 abbaf +=9 bf =10 baf +=11

af =12 baf +=13 baf +=14 115 =f

n개의 입력 변수가 있을 때 진리표의 행의 개수는 개이며, 개의 서로 다른 함수가 존재.

n2n22

n=2 16222 = n=3 25622 823

== n=4 6553622 1624==

부울함수의 종류

34한국기술교육대학교 전기전자통신공학부