基礎理論
アルゴリズム
コンピュータ構成要素
システム構成要素
ソフトウェア
ハードウェア
ヒューマンインタフェース
マルチメディア
データベース
ネットワーク
セキュリティ
システム開発技術
ソフトウェア開発管理技術
😀 mypage
🥇 ranking
📊 chart
📏 rule
No.98 負数を2の補数で表現する符号付き16ビットの2進数を16進法で表示したもののうち,4倍するとあふれが生じるものはどれか。
⭕️
💾
🖊 ☑️
⭕️ [[ AnswerCalc[0] ]] % A [[ AnswerCalc[1] ]]
16ビットの数値表現では、216種類の数字を表わせます。符号なし(正の数のみ)では0~65535、符号付き(正&負)では -32768~32767 までの数値表現することができます。
(-32768~32767= -216-1 ~216-1 -1)

まずは、16進法で表示されているものを2進数に変換してみましょう。
 1FFF→0001111111111111
 DFFF→1101111111111111
 E000→1110000000000000
 FFFF→1111111111111111

符号付き16ビットでは、先頭ビットが符号ビット、下位15ビットの値が絶対値を表します。先頭ビットが0の場合は0~32767、1の場合は -32768~-1を表現します。
4つの中では「ア」が正の数、「イ」「ウ」「エ」が負の数を表しているということになります。

「イ」「ウ」「エ」は、2の補数で表されている負数です。2の補数表現はもう一度反転させて1を加える処理を行うと、元の値に戻る性質があります。これを使ってそれぞれの負数の絶対値を求めます。
 正の数なのでそのまま→0001111111111111
 1101111111111111→0010000000000001
 1110000000000000→0010000000000000
 1111111111111111→0000000000000001

これらを4倍してみます。4倍なので左に2ビット分シフトさせます。
 0001111111111111→0111111111111100
 0010000000000001→1000000000000100
 0010000000000000→1000000000000000
 0000000000000001→0000000000000100
  • 1FFF
    絶対値は32764です。符号付き16ビットで表現できる範囲内なので、あふれは生じません。
  • DFFF
    正しい。絶対値が32772です。元は負数なので-32772となり、符号付き16ビットで表現できる範囲を超えてしまっているため、あふれが生じます。
  • E000
    絶対値は32768です。元は負数なので-32768となり、あふれは生じません。符号付き16ビットで表現できる最も小さい値です。
  • FFFF
    絶対値は4です。あふれは生じません。2の補数表現で、すべてのビットが1である数値が表現しているのは-1であることを覚えておきましょう。
💾 ✔️
[[ d.CommentTxt ]]
🏠 >   基本情報技術者試験 >     テクノロジー >     基礎理論 >  
< >
🥇