Download presentation
Presentation is loading. Please wait.
Published byCecilia Douglas Modified over 9 years ago
1
Basic Boolean Functions Paolo PRINETTO Politecnico di Torino (Italy) University of Illinois at Chicago, IL (USA) Paolo.Prinetto@polito.it Prinetto@uic.edu www.testgroup.polito.it Lecture 3.4
2
2 3.4 Goal This lecture presents the basic Boolean Functions.
3
3 3.4 Prerequisites Lecture 3.3
4
4 3.4 Homework No particular homework is foreseen
5
5 3.4 Further readings No particular suggestion
6
6 3.4 Remark The lecture is organized in such a way to be self-explanatory; thus no further comment will be provided.
7
7 3.4 Basic Boolean Functions Several “basic” boolean functions have been defined, each identified by a unique name, become a world-wide de-facto standard. They include: not and or nand nor exor exnor
8
8 3.4 Why are they so significant? Electronic devices are available to implement each of these basic boolean functions Each device is usually given the same name of the corresponding boolean functions, e.g.: AND function AND gate
9
9 3.4 “Logic Complement” or “NOT” function Informal definition It’s a unary function, providing the ^complement of its input variable. Representations x’ x not (x)
10
10 3.4 Axiomatic definition 0’ = 1not (0) = 1 1’ = 0not (1) = 0 Truth table x not(x) 01 10 “not” (cont'd)
11
11 3.4 Functional definition if x = 1 then not(x) = 0 else not(x) = 1 Theorems ( x’ )’ = x not ( not ( x ) ) = x “not” (cont'd)
12
12 3.4 1 NOT gate, or inverter [ANSI/IEEE standard STD 91-1984 “Graphics symbols for logic functions”] IEEE symboltraditional symbol
13
13 3.4 “Logic product” or “AND” function Informal definition The AND function on 2 (or more) input variables provides the value 1 iff all its input variables get the value 1. Representations x · yx yand ( x, y )
14
14 3.4 Axiomatic definition 0 · 0 = 0and(0,0) = 0 0 · 1 = 0 and(0,1) = 0 1 · 0 = 0and(1,0) = 0 1 · 1 = 1and(1,1) = 1 Truth table x yand(x,y) 000 010 100 111 x y and(x,y) Karnaugh map 01 000 101 “and” (cont'd)
15
15 3.4 Functional representation if x = 1 then and(x,y) = y else and(x,y) = 0 “and” (cont'd)
16
16 3.4 Theorems x · 0 = 0 x · 1 = x x · x = x x · x’ = 0 x · y = y · x x · y · z = (x · y) · z = x · (y · z) “and” (cont'd)
17
17 3.4 & x y x y U U AND gate IEEE symboltraditional symbol
18
18 3.4 “Logic sum” or “OR” function Informal definition The OR function on 2 (or more) input variables provides the value 1 iff at least one of its input variables get the value 1. Representations x + yor ( x, y )
19
19 3.4 Functional representation if x = 1 then or(x,y) = 1 else or(x,y) = y “or” (cont'd)
20
20 3.4 Axiomatic definition 0 + 0 = 0or(0,0) = 0 0 + 1 = 1 or(0,1) = 1 1 + 0 = 1or(1,0) = 1 1 + 1 = 1or(1,1) = 1 Truth table x yor(x,y) 000 011 101 111 x y or(x,y) Karnaugh map 01 001 111 “or” (cont'd)
21
21 3.4 Theorems x + 0 = x x + 1 = 1 x + x = x x + x’ = 1 x + y = y + x x + y + z = (x + y) + z = x + (y + z) “or” (cont'd)
22
22 3.4 11 x y x y UU IEEE symboltraditional symbol OR gate
23
23 3.4 “NAND” function Informal definition The NAND function on 2 (or more) input variables provides the value 1 iff at least one of its input variables get the value 0. Representations nand (x, y)
24
24 3.4 Axiomatic definition nand(0,0) = 1 nand(0,1) = 1 nand(1,0) = 1 nand(1,1) = 0 Truth table x ynand(x,y) 001 011 101 110 x y nand(x,y) Karnaugh map 01 011 110 “nand” (cont'd)
25
25 3.4 Functional representation if x = 1 then nand(x,y) = not(y) else nand(x,y) = 1 “nand” (cont'd)
26
26 3.4 Theorems nand (x, 0) = 1 nand (x, 1) = x’ nand (x, x) = x’ nand (x, x’) = 1 nand (x, y) = nand (y, x) nand (x, y) = not ( and (x, y) ) nand (x, y, z) = nand (x, and (y, z)) = = nand (and (x, y), z) = nand (x, and (y,z)) “nand” (cont'd)
27
27 3.4 & x y x y NAND gate IEEE symboltraditional symbol U U
28
28 3.4 “NOR” function Informal definition The NOR function on 2 (or more) input variables provides the value 1 iff none of its input variables get the value 1. Representations nor (x, y)
29
29 3.4 Axiomatic definition nor(0,0) = 1 nor(0,1) = 0 nor(1,0) = 0 nor(1,1) = 0 Truth table x ynor(x,y) 001 010 100 110 x y nor(x,y) Karnaugh map 01 010 100 “nor” (cont'd)
30
30 3.4 Functional representation if x = 1 then nor(x,y) = 0 else nor(x,y) = not(y) “nor” (cont'd)
31
31 3.4 Theorems nor (x, 0) = x’ nor (x, 1) = 0 nor (x, x) = x’ nor (x, x’) = 0 nor (x, y) = nor (y, x) nor (x, y) = not ( or (x, y) ) nor (x, y, z) = nor (x, or (y, z)) = = nor (or (x, y), z) = nor (x, or (y,z)) “nor” (cont'd)
32
32 3.4 11 x y x y IEEE symboltraditional symbol NOR gate U U
33
33 3.4 “Exclusive OR” (or “EXOR” function) Informal definition The EXOR function on 2 (or more) input variables provides the value 1 iff an odd # of its input variables get the value 1. Representations x yexor (x, y)xor (x, y)
34
34 3.4 Axiomatic definition 0 0 = 0 0 1 = 1 1 0 = 1 1 1 = 0 Truth table x yx y 00 0 01 1 10 1 11 0 x y exor(x,y) Karnaugh map 01 001 110 “exor” (cont'd)
35
35 3.4 1 st functional representation if x = 1 then exor(x,y) = not(y) else exor(x,y) = y “exor” (cont'd) The exor function can be seen as a controlled inverter : x y exor(x,y) 000 011 101 110
36
36 3.4 2 nd functional representation if x = y then exor(x,y) = 0 else exor(x,y) = 1 “exor” (cont'd) The exor function can be seen as a comparator : x y exor(x,y) 000 110 101 011
37
37 3.4 3 rd functional representation if (x+y)mod 2 = 1 then exor(x,y) = 0 else exor(x,y) = 1 “exor” (cont'd) The exor function can be seen as a modulo 2 adder x y (x+y)mod 2 exor(x,y) 0000 0111 1011 1100
38
38 3.4 Theorems exor (x, 0) = x exor (x, 1) = x’ exor (x, x) = 0 exor (x, x’ ) = 1 exor (x, y) = exor (y, x) exor (x, y) = exor (x’, y’) exor (x, y’) = exor (x’, y) = not (exor(x,y)) exor (x, y) = x y’ + x’ y exor (x, y, z) = exor (x, exor (y, z)) = exor (exor (x,y), z) “exor” (cont'd)
39
39 3.4 Karnaugh map for a 4-inputs exor ab cd exor (a,b,c,d) 00011110 000101 011010 110101 101010
40
40 3.4 EXOR gate IEEE symboltraditional symbol =1
41
41 3.4 “EXNOR” function Informal definition The EXOR function on 2 (or more) input variables provides the value 1 iff an even # of its input variables get the value 1. Representations x · y exnor (x, y)
42
42 3.4 Axiomatic definition exnor(0,0) = 1 exnor(0,1) = 0 exnor(1,0) = 0 exnor(1,1) = 1 Truth table x yexnor(x,y) 001 010 100 111 x y exnor(x,y) Karnaugh map 01 010 101 “exnor” (cont'd)
43
43 3.4 Functional representations if x = 1 then exor(x,y) = y else exor(x,y) = not(y) if x = y then exor(x,y) = 1 else exor(x,y) = 0 Theorems exnor (x, y) = exor (x, y)’ = exor (x’, y) = exor (x, y’) exnor (x, y) = x y + x’ y’ “exnor” (cont'd)
44
44 3.4 EXNOR gate IEEE symboltraditional symbol =1 U U
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.