Invitation to Computer Science, C++ Version, Third Edition

Slides:



Advertisements
Similar presentations
1 Chapter 2 The Digital World. 2 Digital Data Representation.
Advertisements

The Binary Numbering Systems
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, Java Version, Third Edition.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third Edition.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third & Fourth Edition Spring 2008:
Connecting with Computer Science, 2e
Assembly Language and Computer Architecture Using C++ and Java
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third Edition.
Chapter 1 Data Storage. 2 Chapter 1: Data Storage 1.1 Bits and Their Storage 1.2 Main Memory 1.3 Mass Storage 1.4 Representing Information as Bit Patterns.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Fourth Edition.
1 A Balanced Introduction to Computer Science, 2/E David Reed, Creighton University ©2008 Pearson Prentice Hall ISBN Chapter 12 Data.
CHAPTER 4 CS BUILDING BLOCKS: BINARY NUMBERS, BOOLEAN LOGIC, GATES.
Number Systems Lecture 02.
Connecting with Computer Science 2 Objectives Learn why numbering systems are important to understand Refresh your knowledge of powers of numbers Learn.
Chapter 5 Data representation.
1 Part I: Machine Architecture 4 A major process in the development of a science is the construction of theories that are confirmed or rejected by experimentation.
©Brooks/Cole, 2003 Chapter 2 Data Representation.
(2.1) Fundamentals  Terms for magnitudes – logarithms and logarithmic graphs  Digital representations – Binary numbers – Text – Analog information 
Binary System and Logical Gates
Computers Organization & Assembly Language
Computers and Scientific Thinking David Reed, Creighton University Data Representation 1.
CPSC 171 Introduction to Computer Science Boolean Logic, Gates, & Circuits.
CS 1308 – Computer Literacy and the Internet. It’s Not Magic  The goal of the next series of lectures is to show you exactly how a computer works. 
Summer 2014 Chapter 1: Basic Concepts. Irvine, Kip R. Assembly Language for Intel-Based Computers 6/e, Chapter Overview Welcome to Assembly Language.
Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.
Click to edit Master title style Click to edit Master text styles –Second level Third level –Fourth level »Fifth level 1 Today’s Topics How information.
CSCI-235 Micro-Computers in Science Hardware Design Part I.
Invitation to Computer Science 5th Edition
Chapter 11 Fluency with Information Technology 4 th edition by Lawrence Snyder (slides by Deborah Woodall : 1.
Foundations of Computer Science Computing …it is all about Data Representation, Storage, Processing, and Communication of Data 10/4/20151CS 112 – Foundations.
Data Representation CS280 – 09/13/05. Binary (from a Hacker’s dictionary) A base-2 numbering system with only two digits, 0 and 1, which is perfectly.
1 Digital Systems and Binary Numbers EE 208 – Logic Design Chapter 1 Sohaib Majzoub.
Lec 3: Data Representation Computer Organization & Assembly Language Programming.
Computer Systems Organization CS 1428 Foundations of Computer Science.
Compsci Today’s topics l Binary Numbers  Brookshear l Slides from Prof. Marti Hearst of UC Berkeley SIMS l Upcoming  Networks Interactive.
Lecture 5. Topics Sec 1.4 Representing Information as Bit Patterns Representing Text Representing Text Representing Numeric Values Representing Numeric.
Chapter 1: Data Storage.
Invitation to Computer Science 6th Edition Chapter 4 The Building Blocks: Binary Numbers, Boolean Logic, and Gates.
Compsci Today’s topics l Binary Numbers  Brookshear l Slides from Prof. Marti Hearst of UC Berkeley SIMS l Upcoming  Networks Interactive.
Chapter 1 Data Storage © 2007 Pearson Addison-Wesley. All rights reserved.
CSCI-100 Introduction to Computing Hardware Design Part I.
Chapter 1 Data Storage © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science,
CS 1308 – Computer Literacy and the Internet Building the CPU.
Instructor: Dr. Lynn Ziegler
Data Representation. What is data? Data is information that has been translated into a form that is more convenient to process As information take different.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
1. Computing Systems Lecture 3 Binary Representation & Boolean Logic Binary and Logic 2.
Appendix C Basics of Digital Logic Part I. Florida A & M University - Department of Computer and Information Sciences Modern Computer Digital electronics.
CO5023 Introduction to Digital Circuits. What do we know so far? How to represent numbers (integers and floating point) in binary How to convert between.
CPSC 171 Introduction to Computer Science Binary.
Chapter 1 Data Storage © 2007 Pearson Addison-Wesley. All rights reserved.
ELECTRICAL ENGINEERING: PRINCIPLES AND APPLICATIONS, Third Edition, by Allan R. Hambley, ©2005 Pearson Education, Inc. Chapter 7 Logic Circuits.
Computing Systems Lecture 3 Binary Representation & Boolean Logic Binary and Logic 1.
Chapter 1: Data Storage.
Computer Science: An Overview Eleventh Edition
Invitation to Computer Science, C++ Version, Fourth Edition
Hardware (Part A) Reading Materials: OUTLINE
Data Representation.
Everything is a number Everything in a computer memory and on storages is a number. Number  Number Characters  Number by ASCII code Sounds  Number.
Fundamentals & Ethics of Information Systems IS 201
Invitation to Computer Science, Java Version, Third Edition
Invitation to Computer Science, C++ Version, Third Edition
Ch2: Data Representation
The Building Blocks: Binary Numbers, Boolean Logic, and Gates
Invitation to Computer Science 6th Edition
Chapter 2 Data Representation.
Presentation transcript:

Invitation to Computer Science, C++ Version, Third Edition Chapter 4: The Building Blocks: Binary Numbers, Boolean Logic, and Gates Invitation to Computer Science, C++ Version, Third Edition

Objectives In this chapter, you will learn about: Boolean logic and gates The binary numbering system Building computer circuits Control circuits Invitation to Computer Science, C++ Version, Third Edition

Introduction Chapter 4 focuses on hardware design (also called logic design) How to represent and store information inside a computer How to use the principles of symbolic logic to design gates How to use gates to construct circuits that perform operations such as adding and comparing numbers, and fetching instructions Invitation to Computer Science, C++ Version, Third Edition

The Reliability of Binary Representation Sec 4.2.3 Electronic devices are most reliable in a bistable environment Bistable environment Distinguishes only two electronic states Current flowing or not Direction of flow Easiest way to make computers reliable was to use a two-state design. Hence they are designed to store and process binary information. Invitation to Computer Science, C++ Version, Third Edition

Binary Storage Devices Sec 4.2.4 Magnetic core Historic device for computer memory Tiny magnetized rings: flow of current sets the direction of magnetic field Binary values 0 and 1 are represented using the direction of the magnetic field Invitation to Computer Science, C++ Version, Third Edition

Using Magnetic Cores to Represent Binary Values Sec 4.2.4 Figure 4.9 Using Magnetic Cores to Represent Binary Values Invitation to Computer Science, C++ Version, Third Edition

Binary Storage Devices (continued) Sec 4.2.4 Transistors Solid-state switches: either permits or blocks current flow A control input causes state change Constructed from semiconductors Invitation to Computer Science, C++ Version, Third Edition

Simplified Model of a Transistor Sec 4.2.4 Figure 4.11 Simplified Model of a Transistor Invitation to Computer Science, C++ Version, Third Edition

Sec 4.2.4 Invitation to Computer Science, C++ Version, Third Edition

Sec 4.2.4 Invitation to Computer Science, C++ Version, Third Edition

Boolean Logic and Gates: Boolean Logic Sec 4.3.1 Boolean logic is a branch of mathematics which describes operations on objects with two possible values, True or False True/False values map easily onto a two-state electronic environment. Boolean logic operations may be performed on electronic signals using devices built out of transistors and other electronic devices. Invitation to Computer Science, C++ Version, Third Edition

Boolean Logic (continued) Sec 4.3.1 Let a and b represent objects with two possible values, true and false Boolean logic operations a AND b True only when a is true and b is true a OR b True when either a is true or b is true, or both are true NOT a True when a is false, and vice versa Invitation to Computer Science, C++ Version, Third Edition

Boolean Logic (continued) Sec 4.3.1 Boolean expressions Constructed by combining together Boolean operations Example: (a AND b) OR ((NOT b) AND (NOT a)) Truth tables capture the output/value of a Boolean expression A column for each input plus the output A row for each combination of input values Invitation to Computer Science, C++ Version, Third Edition

Boolean Logic (continued) Sec 4.3.1 Example: (a AND b) OR ((NOT b) and (NOT a)) _ _ alternate expression (a ∙ b) + ( b ∙ a ) a b Value 1 Invitation to Computer Science, C++ Version, Third Edition

Gates Sec 4.3.2 Gates Hardware devices built from transistors to mimic Boolean logical operations on digital electrical signals AND gate Two input lines, one output line Outputs a 1 when both inputs are 1 Invitation to Computer Science, C++ Version, Third Edition

Gates (continued) OR gate NOT gate Two input lines, one output line Sec 4.3.2 OR gate Two input lines, one output line Outputs a 1 when either input is 1 NOT gate One input line, one output line Outputs a 1 when input is 0 and vice versa Invitation to Computer Science, C++ Version, Third Edition

The Three Basic Gates and Their Symbols Sec 4.3.1 Figure 4.15 The Three Basic Gates and Their Symbols Invitation to Computer Science, C++ Version, Third Edition

Sec 4.3.2 NAND gate AND gate Invitation to Computer Science, C++ Version, Third Edition

Sec 4.3.2 NOR gate OR gate Invitation to Computer Science, C++ Version, Third Edition

Gates (continued) Abstraction in hardware design Sec 4.3.2 Abstraction in hardware design Transform hardware devices to Boolean logical descriptions Design more complex devices in terms of logic, not electronics Conversion from logic to hardware design may be automated Invitation to Computer Science, C++ Version, Third Edition

Diagram of a Typical Computer Circuit Sec 4.4.1 Figure 4.19 Diagram of a Typical Computer Circuit Invitation to Computer Science, C++ Version, Third Edition

Building Computer Circuits: Introduction Sec 4.4.1 A circuit is a collection of logic gates: Transforms a set of binary inputs into a set of binary outputs Values of the outputs depend only on the current values of the inputs Combinational circuits have no cycles in them (no outputs feed back into their own inputs) Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Building Computer Circuits: Intro Cont’d. Sec 4.4.1 inputs output a b c 1 We want a 1 only when both inputs are 0. Is there a gate which will do this? An AND gate gives a 1 only when both inputs are 1. An OR gate gives a 1 whenever at least one input is 1 Could we use an AND gate or an OR gate somehow? Invitation to Computer Science, C++ Version, Third Edition

A Circuit Construction Algorithm Sec 4.4.2 Sum-of-products algorithm is one way to design circuits: Truth table to Boolean expression to gate layout Invitation to Computer Science, C++ Version, Third Edition

The Sum-of-Products Circuit Construction Algorithm Sec 4.4.2 Figure 4.21 The Sum-of-Products Circuit Construction Algorithm Invitation to Computer Science, C++ Version, Third Edition

A Circuit Construction Algorithm (continued) Sec 4.4.2 Sum-of-products algorithm Truth table captures every input/output possible for circuit Repeat process for each output line Build a Boolean expression using AND and NOT for each 1 of the output line Combine together all the expressions with ORs Build circuit from whole Boolean expression Invitation to Computer Science, C++ Version, Third Edition

The Binary Numbering System A computer’s internal storage techniques are different from the way people represent information in daily lives Information inside a digital computer is stored as a collection of binary data Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Numeric and Textual Information Binary numbering system Base-2 Built from ones and zeros Each position is a power of 2 1101 = 1 x 23 + 1 x 22 + 0 x 21 + 1 x 20 Decimal numbering system Base-10 Each position is a power of 10 3052 = 3 x 103 + 0 x 102 + 5 x 101 + 2 x 100 Invitation to Computer Science, C++ Version, Third Edition

Figure 4.2 Binary-to-Decimal Conversion Table Invitation to Computer Science, C++ Version, Third Edition

Taxonomy of Integers Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Numeric and Textual Information (continued) Representing integers Decimal integers are converted to binary integers Given k bits, the largest unsigned integer is 2k - 1 Given 4 bits, the largest is 24-1 = 15 Signed integers must also represent the sign (positive or negative) Invitation to Computer Science, C++ Version, Third Edition

Binary to Decimal Conversion Invitation to Computer Science, C++ Version, Third Edition

Decimal to Binary Conversion Invitation to Computer Science, C++ Version, Third Edition

Two’s Complement Representation of Signed Integers Used by almost all computers today All places hold the value they would in binary except for the leftmost place which is negative 8 bit integer: -128 64 32 16 8 4 2 1 Range: [-128,127] If last bit (leftmost) is 0, then positive  looks just as before is 1, then negative add values for first 7 digits and then subtract 128 1000 1101 = 1+4+8-128 = -115 Invitation to Computer Science, C++ Version, Third Edition

Two’s Complement Representation of Signed Integers Converting from decimal to 2’s complement For positive numbers: find the binary representation For negative numbers: Find the binary representation for its positive equivalent Flip all bits Add a 1 43 43 = 0010 1011 -43 43 = 0010 1011  1101 0100  1101 0101 1101 0101 = -128+64+16+4+1 = -43 We can use the usual laws of binary addition Invitation to Computer Science, C++ Version, Third Edition

Two’s Complement Representation 125 - 19 = 106 0111 1101 1110 1101 ------------- 0110 1010 = 106 ! What happened to the one that we carried at the end? Got lost but still we got the right answer! We carried into and carried out of the leftmost column Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Numeric and Textual Information (continued) Representing real numbers Real numbers may be put into binary scientific notation: a x 2b Example: 101.11 x 20 Number then normalized so that first significant digit is immediately to the right of the binary point Example: .10111 x 23 Mantissa and exponent then stored Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Numeric and Textual Information (continued) Invitation to Computer Science, C++ Version, Third Edition

Converting Decimal Fractions To Binary Invitation to Computer Science, C++ Version, Third Edition

Converting Decimal Fractions To Binary Note that the binary representation of 0.410 is a repeating base two fraction, .01102 This just says that 0.4 cannot be exactly represented as a sum of inverse powers of two. .875 = .400 = Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Textual Information Many transformations exist and all are arbitrary Two popular EBCDIC (Extended Binary Coded Decimal Interchange Code) by IBM ASCII (American Standard Code for Information Interchange) by American National Standards Institute (ANSI) Most widely used Every letter/symbol is represented by 7 bits How many letters/symbols do we have in total? A-Z (26) , a-z (26) , 0-9 (10), symbols (33), control characters (33) If using 1 byte/character  we have one extra bit Extended ASCII-8 (more mathematical and graphical symbols or phonetic marks) --- 256 Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Numeric and Textual Information (continued) Characters are mapped onto binary numbers ASCII code set 8 bits per character; 256 character codes UNICODE code set 16 bits per character; 65,536 character codes Text strings are sequences of characters in some encoding Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Images Representing image data Images are sampled by reading color and intensity values at even intervals across the image Each sampled point is a pixel Image quality depends on number of bits at each pixel Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Images Divide the screen into a grid of cells each referred to as a pixel 512*256 image  grid has 512 columns and 256 rows Pixel values and sizes depend on the type of the image For black & white images, we can use 1 bit for every pixel such that 1  black and 0  white For grayscale images, we use 1 byte where 255  black and 0  white and anything in between is gray (higher/lower values are closer to black/white) For color images, we need three values per pixel (depends on the color scheme used): Red/Green/Blue We need 1 byte per value  3 bytes per pixel For an 512x256 image 512x256x3 = 384K bytes Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Movies Image movies are built from a number of images (or frames) that are displayed in a certain sequence at high speeds 30 frames per second 2-hr movie needs (assume previous image used) 384K * 30 * 60 * 120 = 83 GB (billion) bytes! People use compression to reduce large movie sizes Usually the change between two consecutive images is small  store only difference between frames (Temporal compression) Large areas with the same color can be stored by saving the boundary pixels only (everything within the boundaries has the same value) (Spatial compression) Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Sound Sound/Audio Data An object produces sound when it vibrates in matter (e.g. air) A vibrating object sends a wave of pressure fluctuations through the atmosphere We hear different sounds from different vibrating objects because of variations in the sound wave frequency Higher wave frequency means air pressure fluctuation switches back and forth more quickly during a period of time We hear this as a higher pitch (tone) When there are fewer fluctuations in a period of time, the pitch is lower The level of air pressure in each fluctuation, the wave's amplitude or height, determines how loud the sound is Cycle TIME Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Sound Numbers used to represent the amplitude of sound wave Analog is continuous and we need digital Digitize the sound signal Measure the voltage of the signal at certain intervals (40,000 per sec) Reconstruct wave Compression can also be used for audio files MP3: reduces size to 1/10th  faster transfer over the Internet Digitizing a sound wave Invitation to Computer Science, C++ Version, Third Edition

Digitization of an Analog Signal Figure 4.5 Digitization of an Analog Signal (a) Sampling the Original Signal (b) Recreating the Signal from the Sampled Values Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Sound and Images Storage required Text – 300 page novel 100,000 words x 5 char/word x 8 bits/char = 4 million bits Music – WAV 44,100 samp/sec x 16bits/samp x 60 sec/min = 42 Mbits / min For stereo there are left and right channels => 84 Mbits / min Digital Photo – 3 Megapixel camera, 24 bit color ≈ 3,000,000 pixels/photo x 24 bits/pixel = 72 Mbits = 7 Mbytes Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Sound and Images Data Compression Lossless Run-length Encoding (RLE) http://en.wikipedia.org/wiki/Run-length_encoding Variable length code sets (Huffman code) http://en.wikipedia.org/wiki/Huffman_coding Lossy JPEG – pictures http://en.wikipedia.org/wiki/JPEG MP3, ATRAC – audio http://en.wikipedia.org/wiki/MP3 Invitation to Computer Science, C++ Version, Third Edition

Binary Representation of Sound and Images Digital image and audio have a lot of advantages over non-digital ones Can easily be modified by changing the bit pattern Image enhancement, noise/distortion removal, etc … Superimpose one sound on another or image on another results in newer ones http://en.wikipedia.org/wiki/Digital_audio_editor http://en.wikipedia.org/wiki/Video_editing_software Invitation to Computer Science, C++ Version, Third Edition

Back To Circuit Design And Construction Compare-for-equality circuit Addition circuit Both circuits can be built using the sum-of- products algorithm Invitation to Computer Science, C++ Version, Third Edition

A Compare-for-equality Circuit CE compares two unsigned binary integers for equality Built by combining together 1-bit comparison circuits (1-CE) Integers are equal if corresponding bits are equal (AND together 1-CE circuits for each pair of bits) Invitation to Computer Science, C++ Version, Third Edition

A Compare-for-equality Circuit (continued) 1-CE circuit truth table a b Output 1 Invitation to Computer Science, C++ Version, Third Edition

A Compare-for-equality Circuit (continued) 1-CE Boolean expression First case: (NOT a) AND (NOT b) Second case: a AND b Combined: ((NOT a) AND (NOT b)) OR (a AND b) Invitation to Computer Science, C++ Version, Third Edition

One-Bit Compare for Equality Circuit Figure 4.22 One-Bit Compare for Equality Circuit Invitation to Computer Science, C++ Version, Third Edition

N-bit Compare for Equality Circuit Invitation to Computer Science, C++ Version, Third Edition

Binary Addition Invitation to Computer Science, C++ Version, Third Edition

An Addition Circuit Addition circuit Adds two unsigned binary integers, setting output bits and an overflow Built from 1-bit adders (1-ADD) Starting with rightmost bits, each pair produces A value for that order A carry bit for next place to the left Invitation to Computer Science, C++ Version, Third Edition

An Addition Circuit (cont’d) Full 4-bit Adder Circuit Invitation to Computer Science, C++ Version, Third Edition

An Addition Circuit (continued) 1-ADD truth table Input One bit from each input integer One carry bit (always zero for rightmost bit) Output One bit for output place value One “carry” bit Invitation to Computer Science, C++ Version, Third Edition

An Addition Circuit (continued) ai bi ci Ci+1 Sumi 1 Truth Table Full 1-bit Adder Invitation to Computer Science, C++ Version, Third Edition

The 1-ADD Circuit and Truth Table Figure 4.24 The 1-ADD Circuit and Truth Table Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

An Addition Circuit (continued) Building the full adder Put rightmost bits into 1-ADD, with zero for the input carry Send 1-ADD’s output value to output, and put its carry value as input to 1-ADD for next bits to left Repeat process for all bits Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Circuit Analysis Introduction To analyze what a circuit does there are three approaches. Convert the circuit into its corresponding truth table by hand Simulate the circuit and generate its truth table from observations Build the circuit and study its behavior fro various inputs Invitation to Computer Science, C++ Version, Third Edition

Circuit Analysis Intro. Cont’d. Generate truth table by hand  Remove Internal Lines inputs internal lines Output a b c d e z 1 inputs output a b z 1 Invitation to Computer Science, C++ Version, Third Edition

Control Circuits Do not perform computations Choose order of operations or select among data values Major types of controls circuits Multiplexors Select one of inputs to send to output Decoders Sends a 1 on one output line, based on what input line indicates Invitation to Computer Science, C++ Version, Third Edition

Control Circuits Cont’d. Invitation to Computer Science, C++ Version, Third Edition

Control Circuits (continued) Decoder Form N input lines 2N output lines N input lines indicate a binary number, which is used to select one of the output lines Selected output sends a 1, all others send 0 Invitation to Computer Science, C++ Version, Third Edition

Control Circuits – Decoders A 1-to-2 Decoder Input Out 0 Out 1 1 Invitation to Computer Science, C++ Version, Third Edition

Control Circuits – Decoders Input Lines Output Lines in1 in2 out0 out1 out2 out3 1 A 2-to-4 Decoder Invitation to Computer Science, C++ Version, Third Edition

Figure 4.29 A 2-to-4 Decoder Circuit Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Invitation to Computer Science, C++ Version, Third Edition

Control Circuits (continued) Decoder purpose Given a number code for some operation, trigger just that operation to take place Numbers might be codes for arithmetic: add, subtract, etc. Decoder signals which operation takes place next Invitation to Computer Science, C++ Version, Third Edition

Control Circuits (continued) Multiplexor form 2N regular input lines N selector input lines 1 output line Multiplexor purpose Given a code number for some input, selects that input to pass along to its output Used to choose the right input value to send to a computational circuit Invitation to Computer Science, C++ Version, Third Edition

Control Circuits (continued) Invitation to Computer Science, C++ Version, Third Edition

A Two-Input Multiplexor Circuit Figure 4.28 A Two-Input Multiplexor Circuit Invitation to Computer Science, C++ Version, Third Edition

A Two-Input Multiplexor Circuit Using A 1-to-2 Decoder Invitation to Computer Science, C++ Version, Third Edition

A 4-Input Multiplexor Circuit Using A 2-to-4 Decoder Invitation to Computer Science, C++ Version, Third Edition

Decoder Example 1 Invitation to Computer Science, C++ Version, Third Edition

Multiplexor Example 1 Invitation to Computer Science, C++ Version, Third Edition

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 Circuits are constructed using Boolean expressions as an abstraction Computational and control circuits may be built from Boolean gates Invitation to Computer Science, C++ Version, Third Edition