プロが教える店舗&オフィスのセキュリティ対策術

半加算器についてです。
2進数一桁の加算をするには4パターンあります。
0+0=0 0+1=1 1+0=1 1+1=10

半加算器は、加算結果の1桁目(Sum)と加算結果の桁上がり(Carry)の値を保持します。ただし、下位桁からの桁上がりを考慮しないため、最下位桁で表されます。

それじゃあ(Carry)は何の為に取ったんですか?

質問者からの補足コメント

A 回答 (2件)

写真が小さく、拡大しても潰れて読めません。



> 半加算器は、加算結果の1桁目(Sum)と加算結果の桁上がり(Carry)の値を保持します。
> ただし、下位桁からの桁上がりを考慮しないため、最下位桁で表されます。

これ、その写真に映っている箇所に書いてあることですか?
だとすると、書き方がよくないように思います。


半加算器は2通りの解釈ができます。
(1)
1ビット+1ビット = 1ビットの足し算をする。
※ 桁溢れの発生を検出する

(2)
1ビット+1ビット = 2ビットの足し算をする。


電子回路やコンピュータの世界では、計算前後で桁数を変えないのが普通です。
桁数を元より多くなるような状況では、溢れた(オーバーフローした)部分は切り捨てて、元の桁だけを使います。

この考えだと、半加算器は (1) となります。
足し算の結果は、1ビットのSum です。
Carryは、桁溢れが発生したことを知らせるものです。
    • good
    • 0
この回答へのお礼

丁寧に長文ありがとうございます

お礼日時:2017/12/15 01:34

1個の全加算器は、2個の半加算器と1個のORから構成される。


つまり、半加算器にCarryがないと全加算器はできません。
こんな説明でいいでしょうか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!