投稿する

[3478] 補数について

 ただの学生さん(No.1) 
  応用情報技術者平成25年秋期 午前問3でわからないところがあります.
  URL:https://www.ap-siken.com/kakomon/25_aki/q3.html

  問3のa,bで1と2の補数で表現すると解説では,正負が逆転しています.
  なぜ,補数を取ると正負が逆転するのでしょうか?

  お手数をおかけしますが,ご回答宜しくお願い致します.
2022.06.30 12:41
Howitzerさん(No.2) 
補数を考えるとき、最上位ビットは符号ビットです。
全ビットを反転させると符号ビットも反転するので、正負が逆転します。

ゼロの場合は特殊です。
1の補数では、マイナスゼロ的な値になりますが、
2の補数では、ちゃんと元のビット列に戻りゼロになります。
2022.06.30 14:28
boyonboyonさん(No.3) 
AP シルバーマイスター
問題とは逆に負の数を作る方から考えるといいかと。
最上位ビットが0のものは、そのまま正の数に

0000    0 
0001    1    に対応する補数を  ー1を表現したものにする  ①
0010    2    に対応する補数を  ー2を表現したものにする  ②
0011    3    に対応する補数を  ー3を表現したものにする  ③
0100    4    に対応する補数を  ー4を表現したものにする  ④
0101    5    に対応する補数を  ー5を表現したものにする  ⑤
0110    6    に対応する補数を  ー6を表現したものにする  ⑥
0111    7    に対応する補数を  ー7を表現したものにする  ⑦

2の補数の場合
①  1111
②  1110
③  1101
④  1100
⑤  1011
⑥  1010
⑦  1001
1000    の場合は、最上位が1なのでー8

1の補数の場合
①  1110
②  1101
③  1100
④  1011
⑤  1010
⑥  1001
⑦  1000
1111は、0に対応するので、ー0のようなもの???

が対応する補数になります。

あと、補数に正負はありません。
2022.06.30 23:40
 ただの学生さん(No.4) 
  お礼の返信が大変遅れてしまい申し訳ございません.
  Howitzerさん,boyonboyonさんお答えありがとうございます.
2022.07.01 17:35

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop