Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Review of Boolean algebra Just like Boolean logic Variables can only be 1 or 0 Instead of true / false Instead of true / false.

Similar presentations


Presentation on theme: "1 Review of Boolean algebra Just like Boolean logic Variables can only be 1 or 0 Instead of true / false Instead of true / false."— Presentation transcript:

1 1 Review of Boolean algebra Just like Boolean logic Variables can only be 1 or 0 Instead of true / false Instead of true / false

2 2 Review of Boolean algebra Not is a horizontal bar above the number 0 = 1 0 = 1 1 = 0 1 = 0 Or is a plus 0+0 = 0 0+0 = 0 0+1 = 1 0+1 = 1 1+0 = 1 1+0 = 1 1+1 = 1 1+1 = 1 And is multiplication 0*0 = 0 0*0 = 0 0*1 = 0 0*1 = 0 1*0 = 0 1*0 = 0 1*1 = 1 1*1 = 1 _ _ _ _ _

3 3 Review of Boolean algebra Example: translate (x+y+z)(xyz) to a Boolean logic expression (x  y  z)  (  x  y  z) (x  y  z)  (  x  y  z) We can define a Boolean function: F(x,y) = (x  y)  (  x  y) F(x,y) = (x  y)  (  x  y) And then write a “truth table” for it: _ _ _ _ _ _ xyF(x,y) 110 100 010 000

4 4 Quick survey I understand the basics of Boolean algebra I understand the basics of Boolean algebra a) Absolutely! b) More or less c) Not really d) Boolean what?

5 5 Basic logic gates NotAndOrNandNorXor

6 6 Rosen, §10.3 question 1 Find the output of the following circuit Answer: (x+y)y Or (x  y)  y Or (x  y)  y x+yx+y y (x+y)y(x+y)y__

7 7 Rosen, §10.3 question 2 Find the output of the following circuit Answer: xy Or  (  x  y) ≡ x  y Or  (  x  y) ≡ x  y x y xyxy _ _ ___ ___

8 8 Quick survey I understand how to figure out what a logic gate does I understand how to figure out what a logic gate does a) Absolutely! b) More or less c) Not really d) Not at all

9 9 Rosen, §10.3 question 6 Write the circuits for the following Boolean algebraic expressions a) x+y __ __ x x+yx+y

10 10 Rosen, §10.3 question 6 Write the circuits for the following Boolean algebraic expressions b)(x+y)x _______ x+yx+y x+yx+y (x+y)x(x+y)x

11 11 Writing xor using and/or/not p  q  (p  q)  ¬(p  q) x  y  (x + y)(xy) xy xyxyxyxy 110 101 011 000 x+yx+y xyxyxyxy (x+y)(xy) ____

12 12 Quick survey I understand how to write a logic circuit for simple Boolean formula I understand how to write a logic circuit for simple Boolean formula a) Absolutely! b) More or less c) Not really d) Not at all

13 13 Converting decimal numbers to binary 53 = 32 + 16 + 4 + 1 = 2 5 + 2 4 + 2 2 + 2 0 = 1*2 5 + 1*2 4 + 0*2 3 + 1*2 2 + 0*2 1 + 1*2 0 = 110101 in binary = 00110101 as a full byte in binary 211= 128 + 64 + 16 + 2 + 1 = 2 7 + 2 6 + 2 4 + 2 1 + 2 0 = 1*2 7 + 1*2 6 + 0*2 5 + 1*2 4 + 0*2 3 + 0*2 2 + 1*2 1 + 1*2 0 1*2 1 + 1*2 0 = 11010011 in binary

14 14 Converting binary numbers to decimal What is 10011010 in decimal? 10011010 = 1*2 7 + 0*2 6 + 0*2 5 + 1*2 4 + 1*2 3 + 0*2 2 + 1*2 1 + 0*2 0 0*2 2 + 1*2 1 + 0*2 0 = 2 7 + 2 4 + 2 3 + 2 1 = 2 7 + 2 4 + 2 3 + 2 1 = 128 + 16 + 8 + 2 = 128 + 16 + 8 + 2 = 154 = 154 What is 00101001 in decimal? 00101001 = 0*2 7 + 0*2 6 + 1*2 5 + 0*2 4 + 1*2 3 + 00101001 = 0*2 7 + 0*2 6 + 1*2 5 + 0*2 4 + 1*2 3 + 0*2 2 + 0*2 1 + 1*2 0 0*2 2 + 0*2 1 + 1*2 0 = 2 5 + 2 3 + 2 0 = 2 5 + 2 3 + 2 0 = 32 + 8 + 1 = 32 + 8 + 1 = 41 = 41

15 15 A bit of binary humor Available for $15 at http://www.thinkgeek.com/ tshirts/frustrations/5aa9/ Available for $15 at http://www.thinkgeek.com/ tshirts/frustrations/5aa9/

16 16 Quick survey I understand the basics of converting numbers between decimal and binary I understand the basics of converting numbers between decimal and binary a) Absolutely! b) More or less c) Not really d) Not at all

17 17 How to add binary numbers Consider adding two 1-bit binary numbers x and y 0+0 = 0 0+0 = 0 0+1 = 1 0+1 = 1 1+0 = 1 1+0 = 1 1+1 = 10 1+1 = 10 Carry is x AND y Sum is x XOR y The circuit to compute this is called a half-adder xyCarrySum 0000 0101 1001 1110

18 18 The half-adder Sum = x XOR y Carry = x AND y

19 19 Using half adders We can then use a half-adder to compute the sum of two Boolean numbers 1 1 0 0 1 1 0 0 + 1 1 1 0 010? 001

20 20 Quick survey I understand half adders I understand half adders a) Absolutely! b) More or less c) Not really d) Not at all

21 21 How to fix this We need to create an adder that can take a carry bit as an additional input Inputs: x, y, carry in Inputs: x, y, carry in Outputs: sum, carry out Outputs: sum, carry out This is called a full adder Will add x and y with a half-adder Will add x and y with a half-adder Will add the sum of that to the carry in Will add the sum of that to the carry in What about the carry out? It’s 1 if either (or both): It’s 1 if either (or both): x+y = 10 x+y = 10 x+y = 01 and carry in = 1 x+y = 01 and carry in = 1 xyccarrysum 11111 11010 10110 10001 01110 01001 00101 00000

22 22 The full adder The “HA” boxes are half-adders

23 23 The full adder The full circuitry of the full adder

24 24 Adding bigger binary numbers Just chain full adders together

25 25 Adding bigger binary numbers A half adder has 4 logic gates A full adder has two half adders plus a OR gate Total of 9 logic gates Total of 9 logic gates To add n bit binary numbers, you need 1 HA and n-1 FAs To add 32 bit binary numbers, you need 1 HA and 31 FAs Total of 4+9*31 = 283 logic gates Total of 4+9*31 = 283 logic gates To add 64 bit binary numbers, you need 1 HA and 63 FAs Total of 4+9*63 = 571 logic gates Total of 4+9*63 = 571 logic gates

26 26 Quick survey I understand (more or less) about adding binary numbers using logic gates I understand (more or less) about adding binary numbers using logic gates a) Absolutely! b) More or less c) Not really d) Not at all

27 27 More about logic gates To implement a logic gate in hardware, you use a transistor Transistors are all enclosed in an “IC”, or integrated circuit The current Intel Pentium IV processors have 55 million transistors!

28 28 Pentium math error 1 Intel’s Pentiums (60Mhz – 100 Mhz) had a floating point error Intel’s Pentiums (60Mhz – 100 Mhz) had a floating point error Graph of z = y/x Graph of z = y/x Intel reluctantly agreed to replace them in 1994 Intel reluctantly agreed to replace them in 1994 Graph from http://kuhttp.cc.ukans.edu/cwis/units/IPPBR/pentium_fdiv/pentgrph.html

29 29 Pentium math error 2 Top 10 reasons to buy a Pentium: Top 10 reasons to buy a Pentium: 10Your old PC is too accurate 8.9999163362 Provides a good alibi when the IRS calls 7.9999414610 Attracted by Intel's new "You don't need to know what's inside" campaign 6.9999831538 It redefines computing--and mathematics! 5.9999835137 You've always wondered what it would be like to be a plaintiff 4.9999999021 Current paperweight not big enough 3.9998245917 Takes concept of "floating point" to a new level 2.9991523619 You always round off to the nearest hundred anyway 1.9999103517 Got a great deal from the Jet Propulsion Laboratory 0.9999999998 It'll probably work!!

30 30 Flip-flops Consider the following circuit: What does it do?

31 31 Memory A flip-flop holds a single bit of memory The bit “flip-flops” between the two NAND gates The bit “flip-flops” between the two NAND gates In reality, flip-flops are a bit more complicated Have 5 (or so) logic gates (transistors) per flip- flop Have 5 (or so) logic gates (transistors) per flip- flop Consider a 1 Gb memory chip 1 Gb = 8,589,934,592 bits of memory 1 Gb = 8,589,934,592 bits of memory That’s about 43 million transistors! That’s about 43 million transistors! In reality, those transistors are split into 9 ICs of about 5 million transistors each

32 32 Quick survey I felt I understood the material in this slide set… I felt I understood the material in this slide set… a) Very well b) With some review, I’ll be good c) Not really d) Not at all

33 33 Quick survey The pace of the lecture for this slide set was… The pace of the lecture for this slide set was… a) Fast b) About right c) A little slow d) Too slow


Download ppt "1 Review of Boolean algebra Just like Boolean logic Variables can only be 1 or 0 Instead of true / false Instead of true / false."

Similar presentations


Ads by Google