- ベストアンサー
計算問題
What is the result of adding the 2's complement number shown below? In each case indicate if an overflow has occurred. (a)11011101 + 11010111 = (b)10111100 + 00111101 = という問題があり、(a)の答えを 10110100 (b)の答えを11111001 としました。これはあっているのでしょうか?問題の意味もいまいちわかりません。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>(a)の答えを 10110100 (b)の答えを11111001 いずれも正解です。 >In each case indicate if an overflow has occurred. 両方とも正解ですのでいずれも場合もオーバーフローは起きていません。 なお、オーバーフローは以下のケースがあります。 [1](正の数)+(正の数)⇒オーバーフロー⇒(負の数) [2](負の数)+(負の数)⇒オーバーフロー⇒(正の数) (a)は[2]の場合ですが結果が負の数ですからオーバーフローは発生していません。8ビット目(最上位ビット)が被加数、加数、結果とも「1」ですべて負数のためオーバーフローが発生していないことが分かります。 (b)は8ビット目が「1」(負数)と「0」(正数)の加算ですのでオーバーフローは発生しないケースです。
お礼
大変わかりやすく、問題が解決しました。ありがとうございます。