問:負数を2の補数で表現する符号付き16ビットの2進数を16進法で表示したもののうち、4倍するとあふれが生じるものはどれか。
ア 1FFF
イ DFFF
ウ E000
エ FFFF
以下は、それぞれを2進数表示にしたものです。
先頭の符号ビットは[0]の表記で目立たせてあります。
ア [0]001 1111 1111 1111
イ [1]101 1111 1111 1111
ウ [1]110 0000 0000 0000
エ [1]111 1111 1111 1111
以下は、4倍したもの
ア [0]111 1111 1111 1100
イ [0]111 1111 1111 1100
ウ [1]011 0000 0000 0000
エ [1]111 1111 1111 1100
この場合は、ア以外は負数ですが、『負数を2の補数で表現する符号付き16ビットの2進数を、16進数で表現した場合』は16進数が正の数でも、2進数だと負数になると言う事でしょうか?
また、符号付きでない場合は、上記はすべて正の数と言う事で合ってますか?
回答を見る感じでは16進数を2進数に変換しただけで、『2の補数で表現』の部分がないように思えます。この辺りも知りたいです。
問題の解き方についても疑問があります。
http://questionbox.jp.msn.com/qa4278151.html
での回答では、
イ DFFF
→(シフト前)1101 1111 1111 1111
→(シフト後)0111 1111 1111 1100
先頭ビットが1から0に変わったので「桁あふれ」。
問題集の回答ではこっちで説明されていました。
http://okwave.jp/qa/q4302488.html
のANo2回答では
(シフト前)[1]101 1111 1111 1111
(シフト後)[1]111 1111 1111 1100
2の補数表現による負の数の場合,シフト操作によって1が消えていくのは問題ない。
シフト操作によって0が消えると結果が変になる。これが「あふれ」
符号はシフトさせず、左に2つシフトさせた事で、10が消えた事で桁あふれとしています。
ANo1の回答では、
DFFFだと同様に
1101 1111 1111 1111で1の補数は
0010 0000 0000 0000 2の補数は
0010 0000 0000 0001 つまり、-8193ですよね。
4倍すると、-32772で、これは16ビットの2の補数表現
で表現できる数の範囲からあふれてしまいます。
DFFFなどの2進数に変換後、2の補数を使用するのが正しいのでしょうか?
最初の2つの回答では2の補数を使用していなかったので、疑問に思っています。
頭が混乱しております・・・。
回答宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
論理シフトと算術シフトの2種類を理解することは,
基本情報技術者試験の試験範囲に含まれています。
http://akademeia.info/index.php?%A5%B7%A5%D5%A5% …
データ型が符号なし整数や文字型であったなら論理シフトの動作になりますし,
データ型が符号あり整数(2の補数)だったなら算術シフトの動作になります。
シフトによって正数が突然負数になったり,負数が突然正数になったりするのは異常な事態ですから,それを避けるために符号ビットを動かさない「算術シフト」が用いられます。
今回の問題は「負数を2の補数で表現する符号付き16ビットの2進数」と明記してありますから,その動作は算術シフトです。
よって,下記の私の解説が正しいです。
> http://okwave.jp/qa/q4302488.html のANo2回答
No.5
- 回答日時:
「ANo.1のお礼」に対して。
ア 1FFF(8191)←これだけが正解。
イ DFFF (1101 1111 1111 1111)
→負の数(先頭ビットが1)なので,どんな数かそのままでは不明。
ビット反転の後+1して正数にすれば,どんな数か判明する。
→0010 0000 0000 0001(=8193)
→よって元の数は「-8193」
ウ E000 (1110 0000 0000 0000)
→負の数(先頭ビットが1)なので,どんな数かそのままでは不明。
ビット反転の後+1して正数にすれば,どんな数か判明する。
→0010 0000 0000 0000(=8192)
→よって元の数は「-8192」
エ FFFF (1111 1111 1111 1111)
→2の補数表現において,オール1のパターンは「-1」
(納得いかなければ,ビット反転の後+1して確認してください)
>紹介されたサイトには1000 0000(2進法)は
>-127(10進法)と書いていましたが、-128で合ってますか?
いいえ,あわてずに最後まで読めば,リンク先には-128と書いてあります。
1の補数を解説した途中の箇所を間違えて参照しているのでしょう。
No.3
- 回答日時:
質問文の中で紹介されていた
> http://okwave.jp/qa/q4302488.html のANo2回答
の回答者本人です。
細かい個々のご質問に対してはいまから回答していきますが,
結論から言うと私の解説が正しいです。自信があります。
>16進数が正の数でも、2進数だと負数になると言う事でしょうか?
これは質問がおかしい。コンピュータにとって自明的に存在するのは単に「ビット列」であって,正数なのか負数なのかは解釈の違いでしかないので。
例えば次のような16ビット長のデータがあるとします。
1111 1111 1111 1111
これは,符号なし整数と解釈すれば65535ですし,符号あり整数(2の補数)と解釈すれば-1です。画素と解釈すればある色が最大の輝度で光っている状態でしょうし,命令と解釈すればある動作をする命令コードを表しているでしょう。
ですから「1111 1111 1111 1111」というビット列だけ与えられて,
「これは符号なし整数か? それとも符号あり整数(2の補数)か?」という問いに答えるのは不可能です。
>回答を見る感じでは16進数を2進数に変換しただけで、
>『2の補数で表現』の部分がないように思えます。
まったくそのとおりで,16進というのは「2進を4ビットずつまとめて0~Fの1文字に変換しただけ」のものです。16進数だけを見て,それが符号なしか符号ありかを判断することは不可能です。
問題文に「負数を2の補数で表現する」と解釈のための前提が与えられてはじめて,
16進数の最左桁が0~7(0000~0111)なら正数であるし,8~F(1000~1111)なら負数であると判断できます。よって,
> 符号付きでない場合は、上記はすべて正の数と言う事で合ってますか?
合っています。
No.1
- 回答日時:
おそらく、ipyodoraさんは
ア 1FFF
イ DFFF
ウ E000
エ FFFF
が、十進数でいくつなのか判っていらっしゃらないのでは?
それが判っていれば、過去の質問の回答が理解できるはずです。
試験問題を解く以前にそれが判らないと全く先に進めないので
まず、その基本的なところをおさえて置かないと駄目なのでは?
ヒントとして
2の補数の定義から、最上位のビットが立っている場合には
2の補数+A = 0000 (キャリー 1)
となる値Aの負数(ーA)が十進数の値になります。
ちょうどいいサイトが見つかったので
http://www.jtw.zaq.ne.jp/kayakaya/new/kihon/text …
をみて考えてみましょう。
()は十進数
ア 1FFF(8191)
イ DFFF(-24575)
ウ E000(-28671)
エ FFFF(-32767)
問に『負数を2の補数で表現する符号付き16ビットの2進数を16進法で表示』となっているので、各ア~エの16進数を2進数に変換した時の最上位のビットは符号ビットとして考えて、この値になりました。合ってますでしょうか?
なんだか、混乱から抜け出せませんでした。紹介されたサイトには1000 0000(2進法)は-127(10進法)と書いていましたが、-128で合ってますか?
むずかしいです・・・。自分でもびっくりする程分かりません・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
ロボットの住む世界で流行ってる罰ゲームとは?
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
桁あふれがわかりません
情報処理技術者・Microsoft認定資格
-
次の式は何進法で成立するか。という問題が理解できません。
情報処理技術者・Microsoft認定資格
関連するカテゴリからQ&Aを探す
医師・看護師・助産師
薬剤師・登録販売者・MR
医療事務・調剤薬局事務
歯科衛生士・歯科助手
臨床検査技師・臨床工学技士
理学療法士・作業療法士・言語聴覚士
臨床心理士・心理カウンセラー・ソーシャルワーカー
介護福祉士・ケアマネージャー・社会福祉士
弁護士・行政書士・司法書士・社会保険労務士
フィナンシャルプランナー(FP)
中小企業診断士
公認会計士・税理士
簿記検定・漢字検定・秘書検定
情報処理技術者・Microsoft認定資格
TOEFL・TOEIC・英語検定
建築士
インテリアコーディネーター
宅地建物取引主任者(宅建)
不動産鑑定士・土地家屋調査士
マンション管理士
電気工事士
美容師・理容師
調理師・管理栄養士・パティシエ
シェフ
保育士・幼稚園教諭
教師・教員
国家公務員・地方公務員
警察官・消防士
その他(職業・資格)
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実績を積むという表現
-
【機械図面】 最大値・最小値...
-
どなたか教えいただけませんか?
-
言葉遣いについて ○○を取りに行...
-
「充足に達しましたので」これ...
-
敬語の使い方
-
変電所のことをS/Sと表現するそ...
-
ネットワークアドレスの問題:...
-
機械組み立て工場での電動ドラ...
-
2進数の問題を教えてください。
-
64bit変数までしかサポートされ...
-
味の表現で「どっきりする」っ...
-
どのビットが誤っているか求め...
-
生成多項式の最高次数とはなん...
-
桁あふれがわかりません
-
情報処理の勉強しております。...
-
「最大300字程度」
-
1の補数の2進数での減算(基本...
-
16進数の表し方について
-
高窓(ハイサイド窓)を平面図...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実績を積むという表現
-
【機械図面】 最大値・最小値...
-
言葉遣いについて ○○を取りに行...
-
「充足に達しましたので」これ...
-
「最大300字程度」
-
敬語の使い方
-
桁あふれがわかりません
-
ビジネスメールについて
-
高窓(ハイサイド窓)を平面図...
-
変電所のことをS/Sと表現するそ...
-
16進数の表し方について
-
2進数の問題を教えてください。
-
いつ電話をよこすの?という表...
-
問:負数を2の補数で表現する...
-
機械組み立て工場での電動ドラ...
-
1の補数の2進数での減算(基本...
-
ハンマードリルで木杭の打ち込み
-
どなたか教えいただけませんか?
-
超音波検査について
-
生成多項式の最高次数とはなん...
おすすめ情報