Top Banner
36
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: Arithmatic &Logic Unit
Page 2: Arithmatic &Logic Unit

Transistors as Switches

VBB voltage controls whether the transistor conducts in a common base configuration.

Logic circuits can be built

Page 3: Arithmatic &Logic Unit

AND

In order for current to flow, both switches must be closed Logic notation AB = C (Sometimes AB = C)

A B C

0 0 0

0 1 0

1 0 0

1 1 1

Page 4: Arithmatic &Logic Unit

OR

Current flows if either switch is closed Logic notation A + B = C

A B C

0 0 0

0 1 1

1 0 1

1 1 1

Page 5: Arithmatic &Logic Unit

Properties of AND and OR

Commutation A + B = B + A A B = B A

Same as

Same as

Page 6: Arithmatic &Logic Unit

Properties of AND and OR

Associative Property A + (B + C) = (A + B) + C

A (B C) = (A B) C

=

Page 7: Arithmatic &Logic Unit

Properties of AND and OR

Distributive Property A + B C = (A + B) (A + C) A + B C

A B C Q

0 0 0 0

0 0 1 0

0 1 0 0

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 1

Page 8: Arithmatic &Logic Unit

Distributive Property

(A + B) (A + C)

A B C Q

0 0 0 0

0 0 1 0

0 1 0 0

1 0 0 1

1 0 1 1

1 1 0 1

1 1 1 1

Page 9: Arithmatic &Logic Unit

Binary Addition

A B S C(arry)

0 0 0 0

1 0 1 0

0 1 1 0

1 1 0 1

Notice that the carry results are the same as AND

C = A B

Page 10: Arithmatic &Logic Unit

Inversion (NOT)

A Q

0 1

1 0AQ Logic:

Page 11: Arithmatic &Logic Unit

Exclusive OR (XOR)

A B S

0 0 0

1 0 1

0 1 1

1 1 0

Either A or B, but not both

This is sometimes called the inequality detector, because the result will be 0 when the inputs are the same and 1 when they are different.

The truth table is the same as for S on Binary Addition. S = A B

Page 12: Arithmatic &Logic Unit

Getting the XOR

A B S

0 0 0

1 0 1

0 1 1

1 1 0

BAor BA

Two ways of getting S = 1

Page 13: Arithmatic &Logic Unit

Circuit for XOR

BA BABA

Accumulating our results: Binary addition is the result of XOR plus AND

Page 14: Arithmatic &Logic Unit

Half Adder

Called a half adder because we haven’t allowed for any carry bit on input. In elementary addition of numbers, we always need to allow for a carry from one column to the next.

18

25

4

3 (plus a carry)

Page 15: Arithmatic &Logic Unit

Full Adder

INPUTS OUTPUTS

A B CIN COUT S

0 0 0 0 0

0 0 1 0 1

0 1 0 0 1

0 1 1 1 0

1 0 0 0 1

1 0 1 1 0

1 1 0 1 0

1 1 1 1 1

Page 16: Arithmatic &Logic Unit

Full Adder Circuit

Page 17: Arithmatic &Logic Unit

Chaining the Full Adder

Possible to use the same scheme for subtraction by

noting that

A – B = A + (-B)

Page 18: Arithmatic &Logic Unit

Binary CountingUse 1 for ON

Use 0 for OFF

= 00101011

Binary Counter

So our example has 25 + 23 + 21 + 20 = 32 + 8 + 2 + 1 = 43

Page 19: Arithmatic &Logic Unit

Counting in Binary

1 1 11 1011 21 10101

2 10 12 1100 22 10110

3 11 13 1101 23 10111

4 100 14 1110 24 11000

5 101 15 1111 25 11001

6 110 16 10000 26 11010

7 111 17 10001 27 11011

8 1000 18 10010 28 11100

9 1001 19 10011 29 11101

10 1010 20 10100 30 11110

Page 20: Arithmatic &Logic Unit

NAND (NOT AND)

A B Q

0 0 1

0 1 1

1 0 1

1 1 0

BAQ

Page 21: Arithmatic &Logic Unit

NOR (NOT OR)

A B Q

0 0 1

0 1 0

1 0 0

1 1 0

BAQ

Page 22: Arithmatic &Logic Unit

Exclusive NOR

A B Q

0 0 1

0 1 0

1 0 0

1 1 1

BAQ

Equality Detector

Page 23: Arithmatic &Logic Unit

Summary

Summary for all 2-input gates

Inputs Output of each gate

 A   B  AND NAND  OR  NOR XOR XNOR

0 0 0 1 0 1 0 1

0 1 0 1 1 0 1 0

1 0 0 1 1 0 1 0

1 1 1 0 1 0 0 1

Page 24: Arithmatic &Logic Unit

Number Systems

Decimal (base 10) {0 1 2 3 4 5 6 7 8 9} Place value gives a logarithmic

representation of the number Ex. 4378 means

4 X 103 = 4000 3 X 102 = 300 7 X 101 = 70 8 X 100 = 8

The place also gives the exponent of the base

Page 25: Arithmatic &Logic Unit

Example

432,6004 3 2 6 0 0

105

104

103

100

101

102

Powers of ten:

100 = 1 102 = 100 104 = 10000

101 = 10 103 = 1000 105 = 100000

Page 26: Arithmatic &Logic Unit

Binary (base 2) {0 1}

Binary Decimal

0 0

1 1

10 2

11 3

100 4

101 5

110 6

111 7

1000 8

1001 9

1010 10

Page 27: Arithmatic &Logic Unit

Example

1 1 0 1 1 0 0 1

27

26

25

20

21

22

24 23

Page 28: Arithmatic &Logic Unit

Decimal Equivalent

1101 1001 1 X 27 = 128 + 1 X 26 = 64 + 0 X 25 = 0 + 1 X 24 = 16 + 1 X 23 = 8 + 0 X 22 = 0 + 0 X 21 = 0 + 1 X 20 = 1 217

Notice how powers of two stand out:

20 = 1

21 = 10

22 = 100

23 = 1000

Page 29: Arithmatic &Logic Unit

Decimal to Binary Conversion Ex. 575

Find the largest power of two less than the number 29 = 512

Subtract that power of two from the number 575 – 512 = 63

Repeat steps 1 and 2 for the new result until you reach zero. 25 = 32 63 – 32 = 31 24 = 16 31 – 16 = 15 23 = 8 15 – 8 = 7 22 = 4 7 – 4 = 3 21 = 2 3 – 2 = 1 20 = 1 1 – 1 = 0

Construct the number 1000111111

Page 30: Arithmatic &Logic Unit

Another Example

144 27 = 128 144 – 128 = 16 24 = 16 16 – 16 = 0

Result 10010000

Page 31: Arithmatic &Logic Unit

Hexadecimal (base 16)

{0 1 2 3 4 5 6 7 8 9 A B C D E F} Assignments Dec Hex Dec Hex

0 0 8 8

1 1 9 9

2 2 10 A

3 3 11 B

4 4 12 C

5 5 13 D

6 6 14 E

7 7 15 F

Page 32: Arithmatic &Logic Unit

Example

163

162

160

161

3 B 6 E

3 X 163 = 12288

11 X 162 = 2816

6 X 161 = 96

14 X 160 = 14

15214

Page 33: Arithmatic &Logic Unit

Hexadecimal is Convenient for Binary Conversion

Binary Hex Binary Hex

0 0 1001 29

1 1 1010 A

10 2 1011 B

11 3 1100 C

100 4 1101 D

101 5 1110 E

110 6 1111 F

111 7 1 0000 10

1000 8 Nibble

Page 34: Arithmatic &Logic Unit

Binary to Hex Conversion

Group binary number by fours (nibbles) 1101 1001 0110

Convert each nibble into hex equivalent 1101 1001 0110 D 9 6

Page 35: Arithmatic &Logic Unit

Decimal to Hex Conversion

Ex. 284 162 = 256 284 – 256 = 28 161 = 16 28 - 16 = 12 (Hex C)

Result 1 1 C

Page 36: Arithmatic &Logic Unit

Another Example with an Extension 1054

162 = 256 But we have several multiples of 256 in

1054 1054/256 = 4.12 take integer part This eliminates 4*256 = 1024

1054 – 1024 = 30 161 = 16 30 – 16 = 14 (Hex E)

Result 4 1 E