応用情報技術者試験掲示板


[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) 
問題とは逆に負の数を作る方から考えるといいかと。
最上位ビットが0のものは、そのまま正の数に

0000    0 
0001    1    に対応する補数を  ー1を表現したものにする  @
0010    2    に対応する補数を  ー2を表現したものにする  A
0011    3    に対応する補数を  ー3を表現したものにする  B
0100    4    に対応する補数を  ー4を表現したものにする  C
0101    5    に対応する補数を  ー5を表現したものにする  D
0110    6    に対応する補数を  ー6を表現したものにする  E
0111    7    に対応する補数を  ー7を表現したものにする  F

2の補数の場合
@  1111
A  1110
B  1101
C  1100
D  1011
E  1010
F  1001
1000    の場合は、最上位が1なのでー8

1の補数の場合
@  1110
A  1101
B  1100
C  1011
D  1010
E  1001
F  1000
1111は、0に対応するので、ー0のようなもの???

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

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

返信投稿用フォーム

スパム防止のために初投稿日から30日経過したスレッドへの書き込みは禁止しています。

© 2010-2022 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop