9. 減算回路

9 . 減算回路
このテーマの要点
 ディジタル回路で引き算を行う方法を理解する

半減算器、全減算器の違いを理解する
 補数と加算による減算の理解を深める
教科書の該当ページ
減算回路1[p.54]
 減算回路2[p.56]

補数による減算
A−B
Bを2の補数B'とすると
Ex. A = 01101 = 13 (10), B = 00110 = 6 (10)

A−B
① Bの2の補数B'
B = 00110
B' = 11001 + 1 = 11010
② 加算する
A = 01101
B' = 11010
100111
③ 数値を表すのは下位5bit
Ans. 00111 = + 7

A+B' の足し算で済む
5bit
B−A
① Aの2の補数A'
A = 01101
A' = 10010 + 1 = 10011
② 加算する
B = 00110
A' = 10011
11001
③ 負の数を2の補数表示したもの
11001 − 1 = 11000
Ans. 11001 = − 7
00111 [7]
加減算回路
加算回路とEx-ORで加算・減算の両方が可能
Ex-OR
 加算の場合Ci = 0
A0~3はそのまま
B'0~3 = B0~3(そのまま)
通常の足し算
 減算の場合Ci = 1
A0~3はそのまま
B'0~3 = B0~3(0,1反転)
Ci = 1
2の補数
制御端子
1桁の引き算(2数)を行う
D = A − B : 順番あり
A
0
0
1
1
B 結果
0
0
1 −1
0
1
1
0
差: D
0
1
1
0
D = AB + AB
Ex-OR
借り:Bo
0
1
0
0
Bo = AB
A3
A2
A1
A0
Co
B3
B'3
B2
B'2
B1
B'1
B0
B'0
Ci
2の補数による減算
半減算器
入力
S3
4bit
FA
S2
S1
S0
Ci
全減算器
下位への貸しと上位からの借りを考慮して1桁の引き算(2数)を行う
Bi
D = A − B − Bi
AB
D 00 01 11 10
0 0 1 0 1
1
1
0
1
0
Bi
D = A + B + Bi
A B Bi D Bo
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
Bo
AB
00 01 11 10
0
0
1
0
0
1
1
1
1
0
Bo = AB + ABi + BBi
3入力Ex-OR
並列減算器
 構成方法
必要な桁数(bit)を用意
借り出力(B o)を上位の借り入力(B i)に接続
最下位はBi=0
0
もしくはHSを使用
0
0
 動作例
1
A − B = 100 − 011
①
A0 − B0 = 0 − 1
Bo0 = Bi1= 1, D0 = 1
1
1 0
②
A1 − B1 − Bi1 = 0 − 1 − 1
1
0 1
0 1
Bo1 = Bi2= 1, D1 = 0
③
A2 − B2 − Bi2 = 1 − 0 − 1
Bo2 = 0, D2 = 0
演習:HSによるFSの構成
図のようにHSを2つ組み合わせるとFSが構
成できる。真理値表において必要な空欄に
適当な内容を記入し、その動作を検証せよ。
HS1
HS2
A1= A, Bi1= B
Bi2= Bi
D1, Bo1
A2= D1
D2, Bo2
D, Bo