Top Banner
Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates
63

Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Dec 28, 2015

Download

Documents

Hilary Sharp
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science 5th Edition

Chapter 4

The Building Blocks: Binary Numbers, Boolean

Logic, and Gates

Page 2: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 2

Objectives

In this chapter, you will learn about:

• The binary numbering system

• Boolean logic and gates

• Building computer circuits

• Control circuits

Page 3: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 33

Introduction

• Computing agent– Abstract concept representing any object capable of

understanding and executing our instructions

• Fundamental building blocks of all computer systems – Binary representation– Boolean logic– Gates– Circuits

Page 4: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 44

The Binary Numbering System

• Binary representation of numeric and textual information– Two types of information representation

• External representation

• Internal representation

– Binary is a base-2 positional numbering system

Page 5: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 5

Figure 4.1 Distinction Between External Memory and Internal Representation of Information

Page 6: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 6

Binary Representation of Numeric and Textual Information

• Binary-to-decimal algorithm– Whenever there is a 1 in a column, add the

positional value of that column to a running sum– Whenever there is a 0 in a column, add nothing– The final sum is the decimal value of this binary

number

Page 7: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 7

Figure 4.2 Binary-to-Decimal Conversion Table

Page 8: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 8

Binary Representation of Numeric and Textual Information (continued)

• To convert a decimal value into its binary equivalent– Use the decimal-to-binary algorithm

• Maximum number of binary digits that can be used to store an integer: 16, 32, or 64 bits

• Arithmetic overflow– Operation that produces an unsigned value greater

than 65,535

Page 9: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 9

Signed Numbers

• Sign/magnitude notation– One of a number of different techniques for

representing positive and negative whole numbers– Not used often in real computer systems

• Two’s complement representation– Total number of values that can be represented with

n bits is 2n

Page 10: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 10

Fractional Numbers

• Fractional numbers (12.34 and –0.001275)– Can be represented in binary by using signed-

integer techniques

• Scientific notation– ±M x B±E

– M is the mantissa, B is the exponent base (usually 2), and E is the exponent

• Normalize the number– First significant digit is immediately to the right of the

binary point

Page 11: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 11

Textual Information

• Code mapping– Assigning each printable letter or symbol in our

alphabet a unique number

• ASCII– International standard for representing textual

information in the majority of computers– Uses 8 bits to represent each character

• UNICODE – Uses a 16-bit representation for characters rather

than the 8-bit format of ASCII

Page 12: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 12

Figure 4.3 ASCII Conversion Table

Page 13: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 13

Binary Representation of Sound and Images

• Digital representation– Values for a given object are drawn from a finite set

• Analog representation– Objects can take on any value

• Figure 4.4– Amplitude of the wave: measure of its loudness– Period of the wave (T): time it takes for the wave to

make one complete cycle– Frequency f: total number of cycles per unit time

Page 14: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 14

Figure 4.4 Example of Sound Represented as a Waveform

Page 15: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 15

Binary Representation of Sound and Images (continued)

• Sampling rate– Measures how many times per second we sample

the amplitude of the sound wave• Bit depth

– Number of bits used to encode each sample• MP3

– Most popular and widely used digital audio format• Scanning

– Measuring the intensity values of distinct points located at regular intervals across the image’s surface

Page 16: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 16

Figure 4.5 Digitization of an Analog Signal(a) Sampling the Original Signal(b) Re-creating the Signal from the Sampled Values

Page 17: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Binary Representation of Sound and Images (continued)

• Raster graphics– Each pixel is encoded as an unsigned binary value

representing its gray scale intensity

• RGB encoding scheme– Most common format for storing color images

• True Color– 24-bit color-encoding scheme

• Data compression algorithms – Attempt to represent information in ways that preserve

accuracy while using significantly less space

Invitation to Computer Science, 5th Edition 17

Page 18: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 18

Binary Representation of Sound and Images (continued)

• Run-length encoding– Replaces a sequence of identical values v1, v2, . . .,

vn by a pair of values (v, n)

• Compression ratio– Measures how much compression schemes reduce

storage requirements of data

• Variable length code sets– Often used to compress text– Can also be used with other forms of data

Page 19: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 19

Figure 4.8 Using Variable Length Code Sets(a) Fixed Length(b) Variable Length

Page 20: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 20

Binary Representation of Sound and Images (continued)

• Lossless compression schemes– No information is lost in the compression– It is possible to exactly reproduce the original data

• Lossy compression schemes – Do not guarantee that all of the information in the

original data can be fully and completely recreated

Page 21: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 21

The Reliability of Binary Representation

• Computers use binary representation for reasons of reliability

• Building a base-10 “decimal computer”– Requires finding a device with 10 distinct and stable

energy states that can be used to represent the 10 unique digits (0, 1, . . . , 9) of the decimal system

• Bistable environment– Only two (rather than 10) stable states separated by

a huge energy barrier

Page 22: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 22

Binary Storage Devices

• Magnetic cores – Used to construct computer memories

• Core– Small, magnetizable, iron oxide-coated “doughnut,”

about 1/50 of an inch in inner diameter, with wires strung through its center hole

Page 23: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 23

Figure 4.9 Using Magnetic Cores to Represent Binary Values

Page 24: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 24

Binary Storage Devices (continued)

• Transistor – Solid-state device that has no mechanical or moving

parts– Constructed from semiconductors– Can be printed photographically on a wafer of silicon

to produce a device known as an integrated circuit

• Circuit board– Interconnects all the different chips needed to run a

computer system

Page 25: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 25

Figure 4.10 Relationships Among Transistors, Chips, and Circuit Boards

Page 26: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 26

Binary Storage Devices (continued)

• Mask – Can be used to produce a virtually unlimited number

of copies of a chip

• Figure 4.11– Control (base): used to open or close the switch

inside the transistor– ON state: current coming from the In line

(Collector) can flow directly to the Out line (Emitter), and the associated voltage can be detected by a measuring device

Page 27: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 27

Figure 4.11 Simplified Model of a Transistor

Page 28: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 28

Boolean Logic

• Boolean logic– Construction of computer circuits is based on this– Boolean expression

• Any expression that evaluates to either true or false

– Truth table• Can express the idea that the AND operation

produces the value true if and only if both of its components are true

Page 29: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 29

Figure 4.12 Truth Table for the AND Operation

Page 30: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 30

Boolean Logic (continued)

• Boolean operations– AND, OR, NOT

• Binary operators– Require two operands

• Unary operator– Requires only one operand

• NOT operation – Reverses, or complements, the value of a Boolean

expression

Page 31: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 31

Figure 4.13 Truth Table for the OR Operation

Page 32: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 32

Figure 4.14 Truth Table for the NOT Operation

Page 33: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Gates• Gate

– Electronic device that operates on a collection of binary inputs to produce a binary output

– Transforms a set of (0,1) input values into a single (0,1) output value

• NOT gate – Can be constructed from a single transistor

• To construct an AND gate– Connect two transistors in series with the collector line of

transistor 1 connected to the power supply (logical-1) and the emitter line of transistor 2 connected to ground (logical-0)

Invitation to Computer Science, 5th Edition 33

Page 34: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 34

Figure 4.15 The Three Basic Gates and Their Symbols

Page 35: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 35

Figure 4.16 Construction of a NOT Gate

Page 36: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 36

Figure 4.17 Construction of NAND and AND Gates(a) A Two-transistor NAND Gate (b) A Three-transistor AND Gate

Page 37: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 37

Gates (continued)

• NAND (acronym for NOT AND)– Produces the complement of the AND operation

• To construct an OR gate– Start with two transistors– Transistors are connected in parallel

Page 38: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 38

Figure 4.18 Construction of NOR and OR Gates(a) A Two-transistor NOR Gate(b) A Three-transistor OR Gate

Page 39: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 39

Building Computer Circuits

• Introduction– Circuit: collection of logic gates that transforms a

set of binary inputs into a set of binary outputs

• Every Boolean expression: – Can be represented pictorially as a circuit diagram

• Every output value in a circuit diagram: – Can be written as a Boolean expression

Page 40: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 40

Figure 4.19 Diagram of a Typical Computer Circuit

Page 41: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 41

A Circuit Construction Algorithm

• Step 1: Truth Table Construction– Determine how the circuit should behave under all

possible circumstances– If a circuit has N input lines and if each input line can

be either a 0 or a 1, then:• There are 2N combinations of input values, and the

truth table has 2N rows

Page 42: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 42

A Truth Table for a Circuit with 8 Input Combinations

Page 43: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 43

A Circuit Construction Algorithm (continued)

• Step 2: Subexpression Construction Using AND and NOT Gates– Choose any one output column of the truth table built

in step 1, and scan down that column– Every place that you find a 1 in that output column,

you build a Boolean subexpression that produces the value 1 for exactly that combination of input values and no other

Page 44: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 44

Output Column Labeled Output-1 from the Previous Truth Table

Page 45: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 45

Taking Snapshots

• Step 3: Subexpression Combination Using OR Gates– Take each of the subexpressions produced in step 2

and combine them, two at a time, using OR gates

• Step 4: Circuit Diagram Production– Construct the final circuit diagram

• Algorithms for circuit optimization– Reduce the number of gates needed to implement a

circuit

Page 46: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 46

Figure 4.20 Circuit Diagram for the Output Labeled Output-1

Page 47: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 47

Figure 4.21 The Sum-of-Products Circuit Construction Algorithm

Page 48: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 48

Examples of Circuit Design and Construction

• A Compare-For-Equality Circuit– Tests two unsigned binary numbers for exact

equality– Produces the value 1 (true) if the two numbers are

equal and the value 0 ( false) if they are not

Page 49: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 49

Figure 4.22 One-Bit Compare for Equality Circuit

Page 50: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 50

Figure 4.23 N-Bit Compare for Equality Circuit

Page 51: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 51

An Addition Circuit

• Full adder– Performs binary addition on two unsigned N-bit

integers

• Figure 4.27– Shows the complete full adder circuit called ADD

• Addition circuits – Found in every computer, workstation, and handheld

calculator in the marketplace

Page 52: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 52

Figure 4.24 The 1-ADD Circuit and Truth Table

Page 53: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 53

Figure 4.25 Sum Output for the 1-ADD Circuit

Page 54: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 54

Figure 4.26 Complete 1-ADD Circuit for 1-Bit Binary Addition

Page 55: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 55

Figure 4.27 The Complete Full Adder ADD Circuit

Page 56: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 56

Control Circuits

• Used to: – Determine the order in which operations are carried

out – Select the correct data values to be processed

• Multiplexor– Circuit that has 2N input lines and 1 output line– Function: to select exactly one of its 2N input lines

and copy the binary value on that input line onto its single output line

Page 57: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 57

Figure 4.28 A Two-Input Multiplexor Circuit

Page 58: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 58

Control Circuits (continued)

• Decoder – Has N input lines numbered 0, 1, 2, . . . , N – 1 and

2N output lines numbered 0, 1, 2, 3, . . . , 2N – 1– Determines the value represented on its N input

lines and then sends a signal (1) on the single output line that has that identification number

Page 59: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 59

Figure 4.29 A 2-to-4 Decoder Circuit

Page 60: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 60

Figure 4.30 Example of the Use of a Decoder Circuit

Page 61: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 61

Figure 4.31 Example of the Use of a Multiplexor Circuit

Page 62: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 62

Summary

• Digital computers– Use binary representations of data: numbers, text,

multimedia

• Binary values – Create a bistable environment, making computers reliable

• Boolean logic – Maps easily onto electronic hardware

Page 63: Invitation to Computer Science 5 th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.

Invitation to Computer Science, 5th Edition 63

Summary (continued)

• Circuits – Constructed using Boolean expressions as an abstraction

• Computational and control circuits – Can be built from Boolean gates