質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.93%

【基本情報技術者試験】符号なしの数値として解釈した10進数について

受付中

回答 4

投稿

  • 評価
  • クリップ 0
  • VIEW 1,490

ai5

score 40

基本情報技術者試験

次の問題の解答までの道筋がわかりません。

負数を2の補数で表す8ビットの数値がある。この値を10進数で表現すると
-100である。
この値を符号なしの数値として解釈すると、10進数でいくらか?

答え)156

x-256 = -100

符号なしの数値として解釈とはどのようなもので、
なぜこれは156になるのでしょうか?

お手数ですが、ご教授お願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

+1

マイナスは最大bit(MSB)が1であり、10000000は-127です。
そこで -100は8bit符号ありでは以下のように表現できる。
10011100
これを符号なしとすると 156 です。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

先ず100の8bit符号なし2進数表記を考えます。

100=64+32+4
01100100

次に、-100の8bit符号あり2進数表記を考えます。

10011011 1の補数(ビットを反転)
10011100 2の補数(1加算)

最後に、8bit符号なし2進数として読みます。

128+16+8+4=156

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/13 18:46

    余談:基本情報って、受験者(願書提出ではなく、試験日に実際に試験を受けた人数)に対する合格率がよくて3割です。決して広き門ではないんですよ。
    ※野球選手で考えても、3割バッターって相当のもんですよね
    これがITパスポートだとしたら合格率が約5割なので、発破掛けられるのも仕方がないかとは思いますが

    キャンセル

  • 2017/03/13 19:08

    補足ありがとうございます。
    ここら辺は補数を使った場合の利点を把握できると、
    理解しやすいと思いますが・・・なかなかわかりずらいものだと思います。

    勉強が進んでいないようであれば、ここは一旦放置して、他の部分を勉強するのもありです。
    結局のところ、午前午後でそれぞれ60%以上正解出来ていれば合格なので・・・
    (今もそうですよね?)

    ただ、仕組みさえ理解できていれば、どんな問題が来ても
    解きやすい部類の問題であるのも確かです。頑張ってください。

    余談:IPAがやってる試験は統計情報公開しているので眺めていると面白いですよね。

    キャンセル

  • 2017/03/14 09:25

    皆様ありがとうございました。前よりわかるようになってきました。
    今は試用期間なので下手するとくびですかね?
    労働基準法的にはNGだとは思いますが

    キャンセル

+1

8 ビットの二進数を考えます。
最小値は 0 で、二進数で表すと 0000 0000 です。
最大値は 1111 1111 で、十進数で表すと 255 です。
この最大値に 1 を足すと、1 0000 0000 となり、桁あふれしてしまいます。あふれた最高位を削除すると 0000 0000 となります。

つまり、8 ビットの二進数で考える限り、1111 1111 + 0000 0001 = 0000 0000 が成り立ちます。これを変形すると、0000 0000 - 0000 0001 = 1111 1111 となります。
十進数で表記すると、0 - 1 = 255 つまり -1 = 255 となるのです。
8 ビット二進数では、-1 も 255 も、ともに 1111 1111 です。

しかし、それでは都合が悪いこともあります。そこで、一番上のビットが 1 である時だけ負の数とみなそうじゃないかというのが問題の「負数を2の補数で表す8ビットの数値」です。この最上位ビットを符合と呼びます。
この場合、最大値は 0111 1111 = 127 であり、最小値は 1000 0000 = -127 です。

符合無しの数値とは、一番上のビットを負の数の符号として使わない方法で表せる数値で、先程の説明のように 0 から 255 までの数になります。

二進数では同じ表現でも、十進数では二種類の数を表します。

この問題は、十進数で -100 となる数を符合ありの二進数で表し、それを符号なしの二進数と解釈すると十進数ではいくらになるかという問題です。

0000 0000 は 0 または 256 になりますから、変換には 256 から元の数を引けばいいということになります。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

符号ありの場合は、先頭ビットに1が立っていれば負数として扱いますが、符号なしの場合はその規則を適用せず、正の2進数として扱います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.93%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る