Sei sulla pagina 1di 29

Chapter 9 Boolean Algebra

§9.1 Combinatorial circuits

þH
j _ digital computer \"fH é
 – ¿
ß ºt  0 ü< 1
bits [

þ – 
ß 6x÷
  &“¦ e

” ¦ —¸ŽH programs õ
  data

þ
[ rÏ
É ÎF
ã G&Ü
h ¼–Ðs ë
þ –_
ß › ¸½ËÜ
+ ¼–
г ð‰³|
& c̈ Ã
ºe
” .
ªA
Õ "f s
“
þ r #
É ŒQt_ devices \
 $ œ
© a
) . s


 Ç$
 œ
© œu
© H„
 l
 r–Ð\¦:
 x
Ÿ #Œ" f–
Ð&
˜
ñ Ð\¦“
 §
Šô
8̈Ç
 . r–Ð_ ôÇ Â
 Òìr\
 "
f_ 
_ bit 
H „
 ·
 šÜ
ú ¼
Ð"
– f 
r Â
É ÒìrÜ
 ¼–
Ð „²
 ˜ 
ú a
) . 
"
f ¿º 7xÀ
á Ó_ „

š Ã
ú
· ºïrs
  €‫כ‬
9 ¹K t“
¦ “¦„·
 š“
ú r 1 `
É ¦ “
 §ÀÓ½ÉÃ
+ º e“
” ¦

$ ·
 š“
úr 0 `
É ¦ “
 §ÀÓôÇ
 . gate 
 ÂÒØԍH 3 t
 _

l r&
: “
h solid-state devices  e
 
” HX
 < s“
þ r y
É •
Œ


„ š Ã
ú ºïr`
 ¦ &
 “ ¦ 㼍
H %
 
i Ö̧`
¦ ô
 Ç
 . 7
¤, ¿
£ º bits _


9
| Ë`
+ ¦ Z2 = {0, 1} –
 Ð ³
ð‰³
& € s
 _
þ  ½
 Ë gate
+
t`
þ
[ ¦ 
 6§õ
£  °ú
 s  &

_
ñ ôÇ
 :

Definition.
( 1. AND gate:
1 if x1 = 1 and x2 = 1
x1 ∧ x2 =
0 otherwise.
1
2. OR gate:
(
1 if x1 = 1 or x2 = 1
x1 ∨ x2 =
0 otherwise.

3. NOT
( gate:
1 if x = 0
x=
0 if x = 1.

x1 x1 ∧ x2x1 x1 ∨ x2 x
x2 x 2
x

s
 Qô
Ç combinatorial circuit “
 r l
É %§
3“
4 r t
É t
§“
ú
· ¦ Õ
ª ئ§
 “
4 r Õ
É ª s„_
  {§
9 s
4 
 Õ
ª rÛ
¼% 7
›_ 
œ
©
\
I %
†
ò Ó`
¾ ¦~
 Ît
à · §Ü
ú ¼€"
 fΥ
y{§
9 _
4 —
¸ŽH›
 ¸½Ë\
+ _
#
ŒÄ»{9
 >&
_
ñ a
) . Output s
 inputs 
 sys-
tem _
 œI
© \   
 
H †
 ÊÃ
< º{
9
 

Ä
â º_ circuit
¦ sequential circuit s

` ô
Ç
 .

2
x1
x2 y
x3
Combinatorial Circuit
x1
x2 y

Non-combinatorial Circuit

>>
Y
h_
 combinatorial circuits [
t`
þ ¦ "
 f–Ð 
ƒ
 
 #
Œ

_
 combinatorial circuit `
¦ ë
 –[
ß t Ã
þ º e
” .

0_
A  combinatorial circuit `
¦ Â
 Ò ñ–
Ð ³
ð‰
³
& €
 
 
§õ
£
6 ° s
ú  ³
ð‰³ |
& c̈ Ã
º ” e“
 ¦

y = (x1 ∧ x2) ∨ x3,



s Qô
Ç ³
 ð‰
³`
&¦ Boolean expression s
 ô
Ç
 .

X  symbol [ t x1, . . ., xn \
þ  _
ôÇ Boolean

expression s
€


X = X(x1, . . . xn)

s  
H
 . x ¢̧
H x \
 ¦ literal s
 ô
Ç
 .
3
X = X(x1, . . . xn)  Boolean expression s “¦
x1, . . ., xn \
ÅÒ#
Q”
 ° ‫ כ‬a1, . . ., an [
ú ts
þ  {0, 1} \


”
e € X _
  °ú
‫`כ‬¦ 0
 A_ l ‘r Z
: g
O :Ü
Ë ¼–Ð >
햽
ß É Ã
+ ºe 
”
¦ Õ
“ ª  õ
 \¦ X(a1, . . . an) ¢̧
 H X(xi = ai) –
 Ð H

.


X1 õ X2  H 
 Ã
 º[t 0, 1, x1, . . ., xn \
þ  _
ôÇ

Boolean expressions  €,

(a) (X1), (b) X 1, (3) X1 ∨ X2, (d) X1 ∧ X2
¸ Boolean expression s
• .

\\
V ¦ [
 t€
þ  y = X(x1, x2, x3) = (x1 ∧ x2) ∨ x3 \
 
x1 = 1, x2 = 0, x3 = 0 _
 °
‫`כ‬
ú ¦ Å
 Ҁ,


y = X(1, 0, 0) = (1 ∧ 0) ∨ 0 = 0 ∧ 0 = 0 = 1.

c
‹ ñ \

O H Boolean expression \
 "f
H∧\
 ¦∨˜
 Ð
 €
 $
  >
í–ô
ßÇ
 .

4
UV
d  1 ÅÒ# Q”
 6§_
£  Boolean expression _
 com-
binatorial circuit \
¦Õ
 ªo
“¦ logic table `
¦ë
 –[
ß t
þ .

(x1 ∧ (x2 ∨ x3)) ∨ x2.


x1
x2 x1 ∧ (x2 ∨ x3)
x2 (x1 ∧ (x2 ∨ x3) ∨ x2
x3 x2 ∨ x3

x1 x2 x3 (x1 ∧ (x2 ∨ x3)) ∨ x2


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

5
§9.2 Properties of Combinatorial circuits

Definition. ¿ º Boolean expressions X1 =


X1(x1, . . . , xn) õ
 X2 = X2(x1, . . . , xn)  °  
ú 
H 

 “
‫כ‬ r —
É ¸Ž H ai ∈ Z2 \
  @/K"f X1(a1, . . . , an) =
X1(a1, . . . , an) {
M
9 :s
“¦ X1 = X2 – Ð  H
 .

For example (x ∨ y) = x ∧ y.

Definition. {9
§
4Ã
 º x1, . . ., xn \
 @
/K"
f

_
 Ø
¦§
 `
4 ¦ Å
 ҍH ¿
 º combinatorial circuits  "
f–Ð
equivalent

H
 “
‫כ‬ r>
É ¤°
á  “
ú r{
É 9
§[
4 t\
þ @/K
"f>¤
á
 “
ú
° r Ø
É ¦§
 `
4 ¦ Å
 ҍH 
 r–Ð[ts
þ .

·]
¡
ú \
X "
f |9
½Ë Z2 = {0, 1} \
+  &

_
ñ ô
Ç 3 gates ∨,

∧, − [

þ r 
É 6§_
£  ƒ

 –Z
ßg
O :þ
Ë t
[`¦ ë
 –7
ß ¤ô
á Ç
 .

(a) Associative laws: (a ∨ b) ∨ c = a ∨ (b ∨ c),


(a ∧ b) ∧ c = a ∧ (b ∧ c).
(b) Commutative laws: a∨b = b∨a, a∧b = b∧a.
(c) Distributive laws: a∧(b∨c) = (a∧b)∨(a∧c),
a ∨ (b ∧ c) = (a ∨ b) ∧ (a ∨ c).
(d) Identity laws: a ∨ 0 = a, a ∧ 1 = a.
(e) Complement laws: a ∨ a = 1, a ∧ a = 0.
6
Theorem. Two combinatorial circuits C1, C2,
represented by the Boolean expressions
X1 = X1(x1, . . . , xn) and X2 = X2(x1, . . . , xn),
are equivalent, written as C1 = C2, iff X1 =
X2.

6
 §_
£  ¿
º combinatorial circuits 
H ì
 rC
  Z
g
O :_
Ë 


–Ð "f–
Ð °
 “
ú r 
É õ
 \¦ Å
 ҍH 1
 x1
l xô
p Ç 
 r–Ðs
.
x1
x2 (x1 ∧ x2) ∨ x3
x3

x1
(x1 ∨ x3) ∧ (x2 ∨ x3)
x2
x3



ËZ
+ g
O :\
Ë 
 a1 ∨a2 ∨· · ·∨an 
õ a1 ∧a2 ∧· · ·∧an

þ
[ r ì
É r"


î >
 ú̧
˜ &
_
ñ  
a
) .

7
§9.3 Boolean Algebras

0_
A  combinatorial circuits \
¦ ˜
 Ð {

9Í
ø o
€

6
 §_
£  &

_
ñ 0 x
p .

Definition. 0
A_ 5 t Zg
O :`
Ë ¦ ë
 –7
ß ¤
á 
H —
 ¸Ž
H

system [
t`
þ ¦ Boolean Algebra 
 ôÇ
 .

#l
Π"f _
 system s
êÍ
ø “
‫כ‬ r"
É f–Ð r¿
É º¶"é™
è
0õ1` ¦Ÿ
 í†
Ê
< H
 _
| ½
9 ËS–
+ Ð"fÕ ª¶ "
é™è[

þ –
ß
 ¿
\ º >
h_  ƒ

–
ß  +, ∗ ü
< 
_ unary operator
0  ú̧
˜ &
_
ñ  ÷
&#Q 0
A_ 5 t ƒ

 –Z
ß g
O :`
Ë ¦ ë
 –7
ß ¤
á 
H

s
‫כ‬
 .

\\
V ¦[
 t€
þ , Z2 = {0, 1} with + = ∨, ∗ = ∧, 0 =−

is a Boolean algebra. Õªo“
¦ s s
‫כ‬  ]j{
 &
9 “
h r
É
Boolean algebra s
 .

¢̧ô
Ç, U \
 ¦
 _ universal set 
 “¦ S = P(U )
HU _

  the power set s€ P(U ) with + = ∪,

∗ = ∩, 0 =−, which is the complement, H
 
 Boolean algebra s
_  .
8
Theorem. In a Boolean algebra.
(1) The element x0 is unique: If x + y = 1 and
x ∗ y = 0, then y = x0.
(2) x + x = x, x ∗ x = x: (Idempotent laws)
(3) x + 1 = 1, x ∗ 0 = 0: (Bound laws)
(4) x + x ∗ y = x, x ∗ (x + y) = x: (Absorption
laws)
(5) (x0)0 = x: (Involution laws)
(6) 00 = 1, 10 = 0: (0 and 1 laws)
(7) (x + y)0 = x0 ∗ y 0, (x ∗ y)0 = x0 + y 0: (De
Morgan’s laws)

¤Ã
 : x ∗ y 
Z H xy –
 Ð ³ðl  .
(1) y = y1 = y(x + x0) = yx + yx0 = 0 + yx0 =
xx0 + yx0 = (x + y)x0 = x0.
(7) (x+y)(x0y 0) = (xx0)y 0 +x0(yy 0) = 0y 0 +x00 =
0.
(x + y) + x0y 0 = ((x + y) + x0)((x + y) + y 0) =
(y + (x + x0))(x + (y + y 0)) = 1 · 1 = 1.
By uniqueness (1), x0y 0 = (x + y)0. ¤
9
Definition. For a statement involving Boolean
expressions, its dual is the statement obtained
by replacing 0 by 1, 1 by 0, + by ∗, ∗ by +.

For example, x + 0 = x and x1 = x are dual.


(x + y)0 = x0y 0 and (xy)0 = x0 + y 0 are dual.

Theorem. The dual of a theorem about Boolean


algebras is also a theorem.

¤Ã
 : If P is a proof of a theorem T about
Z
Boolean algebras involving only the definitions
of the Boolean algebra, then the sequence of
statements P ∗ obtained by replacing every state-
ment in P by its dual becomes a proof of the
dual of T . ¤

10
Consider dual statements x+x = x and xx = x.
x = x+0 x = x1
= x + (xx0) x = x(x + x0)
= (x + x)(x + x0) x = xx + xx0
= (x + x)1 x = xx + 0
= x+x x = xx.

§9.4 Boolean functions and Synthesis of cir-


cuits

Definition. The exclusive-OR of x1 and x2,


written x1 ⊕ x2, is defined by the table:

x1 x2 x1 ⊕ x2
1 1 0
1 0 1
0 1 1
0 0 0

Definition. Let X(x1, . . . , xn) be a Boolean


expression. A function f : Zn 2 → Z2 of the form
f (x1, . . . , xn) = X(x1, . . . , xn)
is called a Boolean function.
11
The exclusive-OR function f (x1, x2) = X(x1, x2) =
x1 ⊕ x2 is a Boolean function with the domain
Z22 = {(1, 1), (1, 0), (0, 1), (0, 0)}, which are the
inputs, and the range Z2 = {0, 1}, which are
the outputs.

UV
d  2 f : Z3 2 → Z2 defined by f (x1, x2, x3 ) =
x1 ∧ (x2 ∨ x3) is a Boolean function, whose in-
puts and outputs are given in the following ta-
ble:

x1 x2 x3 f (x1, x2, x3)


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

12
UV
d  3 %

i¼–Ð 6§_
£ { 9
§õ
4Ø ¦§
 ç
4 –_
ß ›
a>
' ³
ð\¦˜
 Ð
¦ Boolean function `
“ ¦ ¹
 Ô
1 ˜
Ð:

x1 x2 x3 f (x1, x2, x3)


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

1) Ø
¦§
 _
4  °
‫כ‬s
ú  1 
“
 ' P
Í : ×
¦\
 "
f ÅÒ#Q”  {
 §
9 , 1,
4
1, 1 \
@/K
"fئ§
 `
4 ¦1–
 ÐÅғ¦ r—
É ¸ŽH{
 9
§°
4 ‫כ‬
ú
 @
\ /K"f
H 0 `
 ¦ Å
 ҍH ³
 ð‰³É
& r
“ x1 ∧ x2 ∧ x3 s
.

2) %
r
i  ئ§
s
4  1 
“
 4 
P
 : צ\
 "
f ÅÒ# Q” {
 9
§ 1,
4
0, 0 \
@/K"
fØ ¦§
 `
4 ¦1–
 Њғ¦ r—
É ¸ŽH{
 9
§°
4 ‫כ‬
ú
 @
\ /K"f
H 0 `
 ¦ Å
 ҍH ³
 ð‰³É
& r
“ x1 ∧ x2 ∧ x3 s
.

13
3) {

9 Í&
ø Ü
h ¼–
Ð x1 ∧ x2 ∧ x3 _
 ³
ð‰³\
& "f Ø
¦§
 _
4  °‫כ‬
ú
1
s “
× ¦\
 "f{ 9
§°
4 ‫כ‬s
ú 0“ 
 Ã
 º xi _
 negation
¦[

` 2ô
Ç
 . 
"f6 P
 :צ_
 {9
§°
4 ‫כ‬s
ú  0, 1, 0 s

¼–
Ù Ð x1 ∧ x2 ∧ x3 `
¦ ×
 ˜
þ € Å
 Ò#Q” {
 9
§\
4 "fë– Ø
ß ¦

s
4
§  1 s“¦ 
 r —
É ¸Ž
H {
 9
§ °
4‫\כ‬
ú  @
/K"fH 0 `
 ¦ Ø
 ¦


4
§ Ç
 .

4) s
]jsy•y
Œ •_
Œ ³ð‰³[
& t_
þ  OR-gate \
¦ë
 –[
ß t€
þ „
 

‰_
^  the Boolean expression:
(x1 ∧ x2 ∧ x3) ∨ (x1 ∧ x2 ∧ x3) ∨ (x1 ∧ x2 ∧ x3)
` 3
¦
 %>
 a
) . 
z´ Å
 Ò#Q”
 ³
ð_ †
ÊÃ
< º f (x1, x2, x3)
H s

 OX>
  %
#
3 Q
”
 Boolean expression ü
< ° “
ú r °
É ‫כ‬
ú
¦ ”

` 
 
H `
‫כ‬ ¦ S
 ‰“
X 
 
H 
 “
‫כ‬ r ~
É 
1 . ¤



9Í&
ø Ü
h ¼–Ð 6§_
£  ñ&o


H Å
 Ò#
Q”
 table Ð
– ÂÒ'

Boolean function `
¦ 1
 ¹
Ô H ~
 ÓZ
½ `
O ¦ ˜
 Ð#Œ Å
ғ¦ e

”
.


Definition. A minterm in the symbols x1, . . . , xn


is a Boolean expression of the form
A = y1 ∧ y2 ∧ · · · ∧ yn
where each yi is either xi or xi.
14
Theorem. f : Zn 2 → Z2 is a Boolean function.
If f is not identically zero, let A1, . . . , Ak denote
the elements in Zn 2 for which f (Ai ) = 1. If
Ai = (a1, . . . , an), set mi = y1 ∧ y2 ∧ · · · ∧ yn,
where
(
xj if aj = 1
yj =
xj if aj = 0.
Then

f (x1, . . . , xn) = m1 ∨ m2 ∨ · · · ∨ mk .

¤Ã
 : If f is identically zero function, it is clearly
Z
a Boolean function since 0 is a Boolean expres-
sion.

Suppose f 6= 0, and let mi(a1, . . . , an) denote


the value of mi for xj = aj . Thus
(
1 if A = Ai
mi(A) =
0 if A =
6 Ai.

15
For A ∈ Zn2 , if A = Ai for some i ∈ {1, . . . , k},
then f (A) = 1 and mi(A) = 1, so
m1(A) ∨ · · · ∨ mk (A) = 1.
IfA 6= Ai for any i ∈ {1, . . . , k}, then f (A) = 0
and mi(A) = 0, so
m1(A) ∨ · · · ∨ mk (A) = 0. ¤

f (x1, . . . , xn) = m1 ∨ m2 ∨ · · · ∨ mk is called the


disjunctive normal form of f .

UV
d  4 It is easy to find the disjunctive normal
form of the exclusive-OR x1 ⊕ x2, whose logic
table is defined by:

x1 x2 x1 ⊕ x2
1 1 0
1 0 1
0 1 1
0 0 0

x1 ⊕ x2 = (x1 ∧ x2) ∨ (x1 ∧ x2). Its combinatorial


circuit is:
16
x1

x1 ⊕ x2

x2

UV
d  5 Find the disjunctive normal form of
f (x1, x2, x3) = (x1 ∨ x2) ∧ x3.

1. Write down the logic table and apply the


theorem above.

2. Expend the expression using the definition


of the Boolean algebra:
(x1 ∨ x2) ∧ x3 = (x1 ∧ x3) ∨ (x2 ∧ x3)
= (x1 ∧ x3 ∧ 1) ∨ (x2 ∧ x3 ∧ 1)
= (x1 ∧ x3 ∧ (x2 ∨ x2))
∨(x2 ∧ x3 ∧ (x1 ∨ x1))
= (x1 ∧ x2 ∧ x3) ∨ (x1 ∧ x2 ∧ x3)
∨(x1 ∧ x2 ∧ x3) ∨ (x1 ∧ x2 ∧ x3)
= (x1 ∧ x2 ∧ x3) ∨ (x1 ∧ x2 ∧ x3)
∨(x1 ∧ x2 ∧ x3)
17
The dual of the disjunctive normal form of a
Boolean function f is of the following form:

g(x1, . . . , xn) = M1 ∧ M2 ∧ · · · ∧ Mk ,
where each Mi is of the form

Mi = y1 ∨ y2 ∨ · · · ∨ yn,
where
(
xj if aj = 1
yj =
xj if aj = 0.
Mi _
— ¸€œ`
ª¦ maxterm s
 
 “
¦g_ —
¸€œ`
ª ¦ con-

junctive normal form s
ô
Ç
 .

18
§9.5 Applications

Definition. A gate is a function f : Zn


2 → Z2 .

AND, OR gates are examples on Z2


2 , and NOT
gate is an example on Z2.

Definition. A set of gates {g1, . . . , gk } is said


to be functionally complete if given any pos-
itive integer n and a function f : Zn 2 → Z2 it
is possible to construct a combinatorial circuit
that compute f using only the gates gi’s.

{ AND, OR, NOT } is functionally complete.

Theorem. { AND, NOT }, { OR, NOT } are


functionally complete.

¤Ã
 : x ∨ y = x ∨ y = x ∧ y, by De Morgan’s law.
Z
Now, given any function f : Zn 2 → Z2, a combi-
natorial circuit can be constructed using AND,
OR, NOT gates. But OR can be replaced by
AND and NOT gates. ¤

19
Definition. A NAND gate, denoted by
x1 ↑ x2, is defined as:
(
0 if x1 = 1 and x2 = 1
x1 ↑ x2 =
1 otherwise.
Its logic table and circuit are drawn as:

x1 x2 x1 ↑ x2
1 1 0
1 0 1
0 1 1
0 0 1
x1
x2 x1 ↑ x2

Theorem. { NAND } is functionally complete.


¤: Note x1 ↑ x2 = xy. Thus
Z
x = xx = x ↑ x
x ∨ y = x y = x ↑ y = (x ↑ x) ↑ (y ↑ y).
Since { OR, NOT } is functionally complete,
so is { NAND }. ¤
20
Combinatorial circuits of NOT and OR using
NAND:
x
x

x
x∨y
y

s
 “
‫כ‬ r gate _
É  tÃ
º\¦ &
 >
h 
H 
 s
‫כ‬ 
€ 
 6§
£
r gate _
É
“  >
hú\
¦ ×
 ¦s
 
H ~
 ÓZ
½ `
O¦ ˜
 Ð.

Consider the combinatorial circuit to compute


the function f given as follows:

x y z f (x, y, z)
1 1 1 1
1 1 0 1
1 0 1 0
1 0 0 1
0 1 1 0
0 1 0 0
0 0 1 0
0 0 0 0
21
The disjunctive normal form of f is

f (x, y, z) = xyz ∨ xyz ∨ xy z.


The combinatorial circuit that computes f has
9 gates as shown on page 441.

Õ
ª Q
s gate _
ú 8& “
h r
É r–Ð\¦ë
 –[
ß tÃ
þ ºe“
” ¦
H]

ë j
H ‘þ
 j&’_
h  
r–Ð Áº% s
Á  
H 
 s
‫כ‬ . s
Q
Ç 

ô `
‫כ‬¦ ¹
 ԍ
1 H 
 `
‫כ‬ ¦ minimizing problem s
 ôÇ
 .

s
 QôÇ ˜
 Ð ßçé
– –ô
ß Ç 
 r–Ð\
¦ 1
 ¹l
Ô  0
A #
ΠBoolean
expresssion `
¦ 
 €$
  ç
–é
ß –y
ß  ½
É 9
+ €‫כ‬
 ¹ e

” .

]
s j E \
¦ e
 _
”_ Boolean expression s
€



Ea ∨ Ea = E = E ∨ Ea
 $

w
í n
ôÇ
. 
=
€


Ea ∨ Ea = E(a ∨ a) = E1 = E

s ¦ ¿
ºP
: 1
xd
p “
” r absorption law s
É .

22

 "
f A
0_ Boolean function f 
H 
 6§õ
£ °
 s
ú
–é
ß
ç–y
ß  
a
):
xyz ∨ xyz ∨ xy z = xy ∨ xy z
= xy ∨ xyz ∨ xy z
= xy ∨ xz
= x(y ∨ z).
s]
 j ¶
"
éA_ 
r–Ðü
< 1xu
l 
“
 combinatorial circuit
H 3 >

 h_ gate ë
–Ü
ß ¼–
Е¸ 0
x
p “
¦ 
6§õ
£  °  
ú :
x
y
z

0_
A  ~ÓZ
½ s
O  ë
–0
ß x“
p r 
É m. \
V\¦ [
 t€
þ  Better cir-

cuit design of exclusive-OR x ⊕ y = xy ∨ xy
H]

ë j\¦ ˜
 Ѐ 0
 A_
 ~ÓZ
½ s
O  ú̧
˜ :x
Ÿ t
 3
w
l “
¦ y
•y
Œ •_
Π
Boolean rule [
t`
þ ¦r
 '‚
Ÿ ̚
à ¸–
Ð&6
h xK
  ˜ÐH
 s
‫כ‬ .

s
Ä
â ºH

xy ∨ xy = xx ∨ yx ∨ xy ∨ yy = (x ∨ y)xy.

·_
¡
ú  ½
†“
Ó r 5 >
É h_ gate \
¦ ‫כ‬
 ¹½¨
 
t}
• †
Œ Ó`
½ ¦ ˜
 Ð
 4 >

€ h_ gate –
Ð 0x
p 
H 
 `
‫כ‬ ¦ ·
 ˜ Ã
ú º e

” .
23
6
 x 0
  xô
p Ç gate _
  ú Minimizing ë
H]
 j\
¦ 
 &


ñ
t

– ‰
ß ³F
& _ l
Õt_
ü  
œI
©  0xô
p Ç gate Ã
 º\¦ 
 



ñ
& Ù¼–
Ð minimizing ë
H]
 j
H r
 @/\
  

 Ç
 .

ì•
Í
ø ¸^‰1x_
p “¦^ ‰™èl Õt_
ü µÏ„
1 s
  Åҁ•Ü
Œ ¼„

‰_
^  
r–Ð\¦ s
 ÀҍH integrated circuits 
 H 
 _
‫כ‬ 

] •s
Π 0xK
p & 
’ . š¸Zt±
þ ˜\
ú •
¸€‫כ‬
9 ¹ô Ç
 r–ІÊÃ
< º\¦



ß H
 r–Ðn  ““
 r AND, OR, NOT, NAND
É

p
1 ° “
ú r 
É œ l
© ‘ r&
: 
h “
 gate [

þ  integrated 
r
Ð1
– x_
p  ½
 ËÜ
+ ¼–Ð÷ &#Qe #
” Q"f Boolean algebra 
H

Œ„
#y
  essential tool –
Ð z™
Π e

” .

s]
 j z
™#
Œ Qt
H multiple output `
 ¦ ?
 /H 
 r–Ð\¦ ˜
 Ð
. n >
 h_ output `
¦ ?
 /H 
 r–ЍH 
 6§_
£  \
V %
ƒ!
3
n >
h_ Boolean expressions –
Ð ³
ð‰³÷
& &#
Q”
 .

24
Consider two outputs:

y1 = ab
y2 = bc ∨ ab = bc ∨ y1.

a y1
b

y2
c

Definition. A half adder accepts as input two


bits x and y and produces as output the binary
sum cs of x and y. The term cs is a two-bit
binary number. We call s the sum bit and c
the carry bit.

25
¤, The table for the half-adder circuit is:
£
7

x y c s
1 1 1 0
1 0 0 1
0 1 0 1
0 0 0 0

#l
Œ "f c = xy, s = x ⊕ y “
 ‫כ‬
 `
¦ ·
 ˜ Ã
ú º e

” ¦, the
half-adder circuit 
H 
 6§õ
£ °
 
ú .

x
y s

26
Definition. A full-adder accepts as input three
bits x, y, and z and produces as output the bi-
nary sum cs of x, y, and z. The term cs is a
two-bit binary number.

[Full-Adder Circuit]
The table for the full-adder circuit is:

x y z c s
1 1 1 1 1
1 1 0 1 0
1 0 1 1 0
1 0 0 0 1
0 1 1 1 0
0 1 0 0 1
0 0 1 0 1
0 0 0 0 0

One can easily check that

s = x ⊕ y ⊕ z; c = xyz ∨ xyz ∨ xyz ∨ xyz.

27
Using the tools set up earlier:

Ea ∨ Ea = E, E = E ∨ Ea,
we get:

c = xyz ∨ xyz ∨ xyz ∨ xyz = xy ∨ xyz ∨ xyz


= xy ∨ xyz ∨ xyz ∨ xyz
= xy ∨ xz ∨ xyz
= xy ∨ xz ∨ xyz ∨ xyz
= xy ∨ xz ∨ yz
= xy ∨ (x ∨ y)z.
The full-adder circuit is given on page 445.

Half-adder and full-adder circuits \


¦s
 6
x
  #Œ¿º
h_
>  3-bits number _½Ë`
+ ¦>
 í–
ß  H combinato-

rial circuit \
¦ 
 6§õ
£ ° s
ú  design ½ É Ã
+ º e

” .

28
M = x3x2x1, N = y3y2y1  \ ½
¦ Ë
+ “
¦
H ¿
 º
binary Ã
º

“¦ z4z3z2z1 `
¦ Õ
 ª +
½s
Ë 
 
.

x1 Half s z1
Adder c s
y1 z2
Full
x2
Adder c s z
y2 3
Full
x3
Adder c z
y3 4

29

Potrebbero piacerti anche