Loading in 5 sec....

CPSC 171 Introduction to Computer SciencePowerPoint Presentation

CPSC 171 Introduction to Computer Science

- 87 Views
- Uploaded on
- Presentation posted in: General

CPSC 171 Introduction to Computer Science

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Boolean Logic, Gates, & Circuits

- Read Chapter 4
- Exam, Oct 2nd in class

- A Boolean variable, A, is either true or false
- A Boolean expression, (A AND B), evaluates to either true or false
- Boolean operators include:
- AND (& • )
- OR ( + )
- NOT (a bar ' ¬ ~)

- a AND b
true only when A and B are both true

- a OR b
true when A is true, B is true, or both are true

- NOT a
true when A is false

Truth tables can be used to capture when an expression is true, given its inputs

You make truth tables for AND and NOT

(a AND b) OR (NOT a AND c)

a·b + ~a·c

ab+āc

Truth tables can be made for complex expressions as well

- Example:
(a AND b) OR ((NOT b) and (NOT a))

- Gates
- Hardware devices built from transistors to mimic Boolean logic
- An electronic device that operates on a collection of binary inputs to produce a single binary output

- AND gate (page 161 in text)
- Two input lines, one output line
- Outputs a 1 when both inputs are 1

- OR gate (page 163 in text)
- Two input lines, one output line
- Outputs a 1 when either input is 1

- NOT gate (page 161 in text
- One input line, one output line
- Outputs a 1 when input is 0 and vice versa

Figure 4.15

The Three Basic Gates and Their Symbols

- A collection of logic gates that transforms a set of binary inputs into a set of binary outputs
- Wire gates together keeping constraints for the number of inputs to any gate

a

b

c

d

1

1

0

- If a, b, c, and d are all true the output can be determined by tracing through the circuit

output

1

0

1

1

1

A circuit construction algorithm

- Truth Table Construction
Determine outputs for every possible input

- Sub-expression Construction (using AND and NOT gates)
For each output find the rows that are 1 and build a sub-expression that is true for the exact input

- Sub-expression combination (using OR gates)
Take each subexpression and combine them, 2 at a time, using OR gates

- Circuit Diagram Production
Construct final circuit by converting Boolean operators into gates

Design a 3-input circuit that is true if exactly two inputs are true, and false otherwise

You Try it: Design a 2-input circuit that is true if the inputs are the same, and false otherwise

- Compare-for-equality circuit
- Addition circuit
- Both circuits can be built using the circuit design algorithm

- 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-CD circuits for each pair of bits)

- 1-CE circuit truth table

- 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)

Figure 4.22

One-Bit Compare-for-Equality Circuit

- AND together the 1-CE circuits, two at a time

- 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

- 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

- Input

Figure 4.24

The 1-ADD Circuit and Truth Table

- 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
- See pg 174, 175, 176