H21年度秋期(午後)問01

半加算器と全加算器に関する次の記述を読んで,設問1~3に答えよ。

(1) 1ビット同士を加算する半加算器の真理値表を,表1に示す。

表1 半加算器の真理値表

 Ⅹ   Y   C   Z 
 0   0   0   0 
 0   1   0   1 
 1   0   0   1 
 1   1   1   0 

(2) 下位からのけた上がり Cin を考慮して1ビット同士を加算する全加算器の真理値表を,表2に示す。

表2 全加算器の真理値表

 Cin   X   Y   C   Z 
 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 


設問1 半加算器を実現する論理回路を,図1に示す。図1中のに入れる正しい答えを,解答群の中から選べ。ただし,AND は論理積,OR は論理和,XOR は排他的論理和, NAND は否定論理積,NOR は否定論理和を表す。

解答群

ア) AND   イ) NAND   ウ) NOR   エ) OR   オ) XOR


設問2 全加算器を実現する論理回路について,次の記述中のに入れる正しい答えを,解答群の中から選べ。

全加算器は,図2に示すように半加算器を2段に接続して実現する。半加算器1はXとYを加算し,半加算器2は半加算器1の結果と Cin を加算する。このとき,半加算器1のけた上がりを C1,半加算器2のけた上がりを C2 とする。X,Y, Cin と, C1, C2 との関係は表3のとおりになる。

表3 X,Y,Cinと,C1,C2との関係

 Cin   X   Y   C1   C2 
 0   0   0   0   0 
 0   0   1   0   0 
 0   1   0   0   0 
 0   1   1   1   0 
 1   0   0   0   0 
 1   0   1   0   1 
 1   1   0   0   1 
 1   1   1 

b に関する解答群

ア) AND   イ) NAND   ウ) NOR   エ) OR

c に関する解答群

    C1   C2 
 ア)   0   0 
 イ)   0   1 
 ウ)   1   0 
 エ)   1   1 

設問3 A,B 及び S を2の補数表現による4ビットの符号付2進整数とし,それぞれのビット表現を A4A3A2A1, B4B3B2B1,及び S4S3S2S1で表す(符号ビットは A4,B4及び S4)。

図3は,A と B の加算を行い,結果を S に求める加算器であり,半加算器と全加算器で実現されている。ここで,C1~C4 とは半加算器及び全加算器からのけた上がりを表す。

この加算器に,A として-1 を,B として-2(いずれも 10 進表記)を与えたとき,図3のC1~C4の値として正しい組合せを,解答群の中から選べ。

解答群

    C1   C2   C3   C4 
 ア)   0   1   0   0 
 イ)   0   1   0   1 
 ウ)   0   1   1   0 
 エ)   0   1   1   1 
 オ)   1   0   0   0 
 カ)   1   0   0   1 
 キ)   1   0   1   0 
 ク)   1   0   1   1 


設問1

答え a-オ)


【解説】

表1より、Cを除いたX、Y、Zの値に着目します。

 Ⅹ   Y   Z 
 0   0   0 
 0   1   1 
 1   0   1 
 1   1   0 

入力X、Yが同じ値の時、出力Zが0、入力X、Yが異なる値の時、出力Zが1なので、
下記の真理値表より、XOR(排他的論理和)となる。


設問2

答え b-エ)  c-ウ)


【解説】

空欄bは、設問1と同様に、入力と出力だけを考える。
入力はC1、C2、出力はCなので、表2と表3を繋げて、この部分だけを抜き出す。

 C1   C2   C 
 0   0   0 
 0   0   0 
 0   0   0 
 1   0   1 
 0   0   0 
 0   1   1 
 0   1   1 
 1 

設問1の解説にある真理値表より、OR(論理和)が正解となる。

空欄cは、表3の一番最後の値を図2に代入して値を求める。

従って、C1=1、C2=0となる。

設問3

答え エ)


【解説】

最初に、Aの-1とBの-2について、2の補数を求める。
負の数は、正の値にしてビットを反転させて1を加算する。

1.負の数(-1)を正の数にする。
(-1)10=(+1)10

2.2進数表現にする。
(+1)10=00012

3.ビット反転する
00012=11102

4.1を加算する。
11112

よって、-1は1111と表現される。

1.負の数(-2)を正の数にする。
(-2)10=(+2)10

2.2進数表現にする。
(+1)10=00102

3.ビット反転する
00012=11012

4.1を加算する。
11102

よって、-2は1110と表現される。

-110=11112=A4A3A2A1
-210=11102=B4B3B2B1

なので、それぞれの値を図3に代入し、けた上がりのC1からC4を計算する。

けた上がりのC1からC4の値を取り出すと、0111になる。

前の問題へ   次の問題へ   問題一覧表   HOME

このページの先頭へ