基本情報試験の過去問をやっているのですが、よく理解できなかったので、解説をお願いします。
●負数を2の補数で表す 16 ビットの符号付き固定小数点数の最小値を表すビット列を, 16 進数として表したものはどれか。
ア 7FFF イ 8000 ウ 8001 エ FFFF
これの答えはイだそうで、説明では「ア~エの16進数をそれぞれ、2進数、10進数、10進数の絶対値に変換して評価する。」とあり表が載っています。
ア・0111111111111111・・・+32767・・・絶対値が32767
イ・1000000000000000・・・ー32768・・・絶対値が32768
ウ・1000000000000001・・・ー32767・・・絶対値が32767
エ・1111111111111111・・・-1・・・・・・・絶対値が1
これでは、イとウ、エがーの符合になっていますが、なぜそうなるのか、基数変換した時の値はどうやって出しているんでしょうか?
回答よろしくお願いします。
No.2ベストアンサー
- 回答日時:
16ビットの2進数は、符号なしの正の2進数では
最小値が(0000 0000 0000 0000)=0,
最大値が(1111 1111 1111 1111)=2^(16)-1=65535
です。(ビットは2進数の1桁のこと)
符号付2進数の場合は、符号なしの2進数の下半分
0000 0000 0000 0000~0111 1111 1111 1111 = 0~(2^15)-1
これを正の数とします。
上半分を負の数に割り当てます(つまり最上位が1の2進数を負数に割り当てます)。つまり先頭ビットは1ですから質問のイ、ウ、エが負数ということです。では個々の負数はどう表すかが問題ですが。
2の補数法では負数は、符号なし2進数と見なして、同じ大きさの正の数に加えて 2^16=1 0000 0000 0000 0000 = 65536 となる数に対応させます。また
正の整数=32767=(0111 1111 1111 1111)=7FFF
負の最大整数=-32768=(1 0000 0000 0000 0000)-(0111 1111 1111 1111)
= (1000 0000 0000 0000)=8000
となります。つまり先頭の桁(ビット)は正負の符号と言うことです。
次に10進と2進の基数変換は参考URLをご覧下さい。
参考URL:http://www.crew.sfc.keio.ac.jp/projects/2001ipl- …
No.1
- 回答日時:
>これでは、イとウ、エが-の符合になっていますが、なぜそうなるのか
そういう定義なんスけど。
まぁ、1 = 0000....01 に 1111....11 を足せば、オーバーフローして 0 になるから -1 = 1111....11 とするとハードウェア的に作りが簡単になる。
のかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 情報処理技術者・Microsoft認定資格 情報技術の問題についてです。 10進数の−36を以下のような16ビットの浮動小数点表示にするといくつ 3 2022/05/21 19:53
- 数学 以下の問題が分かりません。 8ビット浮動小数点数が、最上位ビットから順に符号1ビット、指数部3ビット 4 2023/07/22 16:06
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- その他(形式科学) 高1数学の絶対値の場合分け 多分超基礎の4つの質問 ❶場合訳ってなんのためにやるの? ❷何をどこで分 3 2023/05/04 10:31
- Excel(エクセル) エクセル、日々の集計整理方法。(再送です。) 5 2022/10/02 00:19
- 高校 対数方程式につきまして 4 2022/05/05 07:55
- 数学 絶対値 場合分け 添付の問題ですが、qの式についてxを0以上、0未満で場合分けしています。 普段、絶 3 2022/12/14 12:37
- 数学 数字 絶対値の記号は絶対値そのものを表しているのではなく、ただ、符号も含めた原点からの距離を表してい 8 2022/04/24 14:34
- 数学 2*2の行列に対して固有値の最大実部を与えるkの値を求めたい 3 2022/11/08 16:26
- C言語・C++・C# C言語初心者です、、、お助けください 2 2023/03/14 20:08
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
5進法を10進法への直し方
-
50以下は“50”も入るのですか?
-
HEX2BIN関数の使い方。
-
Excel 16進数
-
16進小数0.Cを10進数小数に変換...
-
10進数の50を2進数で表すといく...
-
偏微分の記号をタイプするため...
-
ヤコビアンが0になってしまう場...
-
数学の問題で
-
2進数の1010は、10進数ではいく...
-
相似変換とユニタリ変換
-
dBm/HzからdBm/MHzへの単位変換
-
8進数から16進数 16進数から8進数
-
dBm→dBμV/mの換算について
-
=(イコール)の上下に点々があ...
-
8進数から2進数に変換の
-
小数点が混じった2進数を8進数...
-
進数の小数点をどう変換するのか
-
n進法→m進法への変換
-
恒等変換と対合とはそれぞれ何...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
50以下は“50”も入るのですか?
-
5進法を10進法への直し方
-
16進小数0.Cを10進数小数に変換...
-
Excel 16進数
-
HEX2BIN関数の使い方。
-
8進数から16進数 16進数から8進数
-
1分45秒75で289,995円稼ぐA君が...
-
「じじょう」が正しい読み方?
-
偏微分の記号をタイプするため...
-
dBm/HzからdBm/MHzへの単位変換
-
n進法→m進法への変換
-
EXCELで10進数表記をB...
-
dBm→dBμV/mの換算について
-
10進数の50を2進数で表すといく...
-
ヤコビアンが0になってしまう場...
-
算数計算 大至急お願いします
-
ACアダプターの消費電力の件
-
幾何と代数は同じ数学でしょうか
-
フーリエ変換・逆変換の虚数成...
-
二進数の循環小数を十進数に変...
おすすめ情報