Lab 04 Adder and Subtractor
Lab 04 Adder and Subtractor
C-out S
Half Adder Truth Table
X Half S Inputs Outputs
Y Adder C-OUT
X Y S C-out
(a) Block Diagram 0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
74LS86
X
Sum S
Y
S (X, Y) = X’Y + XY’=X Y
C-out (X, Y) = XY
C-out
74LS08
Full Adder
Adding two single-bit binary values, X, Y with a carry input
bit C-in produces a sum bit S and a carry out C-out bit.
1 0 0 1 0
1 0 1 0 1 Carry C-out
Y
X
1 1 0 0 1 XY
1 1 1 1 1 C-in 00 01 11 10
0 2 6 4
0 1
S = X’Y’(C-in) + XY’(C-in)’ + XY’(C-in)’ + XY(C-in)
1 3 7 5
S = X Y (C-in) 1 1 1 1 C-in
X Y Y Sum S
C-in
Full
C-out C-in
Adder X
XY
Y
S
X
XC-in C-out
C-in
C-in YC-in
Subtractor
Half Subtractor
Half-Subtractor
Subtracting a single-bit binary value Y from anther X (I.e. X -Y ) produces a
difference bit D and a borrow out bit B-out.
This operation is called half subtraction and the circuit to realize it is called a
half subtractor.
B-out
D
Half Subtractor Truth Table
X Inputs Outputs
Half D
Y Subtractor B-OUT X Y D B-out
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0
D(X,Y) = S (1,2)
D = X’Y + XY’ = X Y 74LS86
X Difference D
Y
B-out(x, y, C-in) = S (1)
B-out = X’Y
B-out
74LS08
Full Subtractor
Subtracting two single-bit binary values, Y, B-in from a
single-bit value X produces a difference bit D and a borrow
out B-out bit. D(X,Y, B-in) = S (1,2,4,7)
B-out(x, y, B-in) = S (1,2,3,7)
Full Subtractor Truth Table
Inputs Outputs Difference D X
XY
X Y B-in D B-out B-in 00 01 11 10
0 6
0 0 0 0 0 0
2
1
4
1
0 0 1 1 1 1 3 7 5
0 1 0 1 1 1 1 1 B-in
0 1 1 0 1
Y
1 0 0 1 0 Borrow B-out X
1 0 1 0 0 XY
1 1 0 0 0 B-in 00 01 11 10
0 2 6 4
1 1 1 1 1 0 1
1 3 7 5
D = X’Y’(B-in) + XY’(B-in)’ + XY’(B-in)’ + XY(B-in) 1 1 1 1 B-in
D = X Y (B-in)
B-out = X’Y + X’(B-in) + Y(B-in) Y
Four-Bit Adder / Subtractor
4-bit Adder