戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

ITパスポート 2020年 秋期 62


問題文

10進数155を2進数で表したものはどれか。

選択肢

10011011(正解)
10110011
11001101
11011001

🔒 解説は解答すると表示されます

10進数155を2進数で表したものはどれか【ITパスポート 解説】

正解の理由

10進数(普通に使う数、例:155)を2進数(0と1だけで表す数)に直すと、ビット(各桁)の重みが の合計になります。155 を2進数にすると各重みを足して となるビット列「10011011」になります。したがって選択肢の中では が当てはまります。
(補足:2進数はコンピュータが使う表現で、右端が =1、左に行くほど =2、=4、… と倍になっていきます。)

解法ステップ

ここでは「2で割って余りを並べる方法」で示します。余りを下から上に読むと2進数になります。
  1. 余り
  2. 余り
  3. 余り
  4. 余り
  5. 余り
  6. 余り
  7. 余り
  8. 余り
余りを下から上に読むと:1 0 0 1 1 0 1 1 → 10011011 となります。これが2進数表記です。
確認(重みを足す):

選択肢別の誤答解説

  • ア: 10011011
    → 上述の通り 。よって正解。
  • イ: 10110011
    → 各ビットの重み:。155 ではありません。
  • ウ: 11001101
    → 各ビットの重み:。155 ではありません。
  • エ: 11011001
    → 各ビットの重み:。155 ではありません。
(各ビットの位置に を掛けて合計すれば、2進数を10進数に戻せます。)

よくある誤解

  1. 余りの並べ方を間違える(上から読む vs 下から読む)
    • 割り算で出る余りは「最後に出た余りが左端」ではなく、「最後に出た余りが左端」になるので、通常は余りを下から上に読む点に注意してください。
  2. 桁の重み(右端が )を忘れる
    • 右から数え始め、0番目が (1)、1番目が (2)です。これを逆にすると計算が全く違ってしまいます。
  3. 余分な桁(先頭の0)を気にしすぎる
    • 例えば 0010011 は 10011 と同じ値です。先頭の0は数値に影響しません。

補足コラム

  • 手早く確認したいときは「大きい2のべき乗を引いていく方法」でもできます。155 から を引くと 27、次に を引くと 11、さらに を引くと 3、 を引くと 1、最後に を引くと 0。取ったべき乗の位置に1を置けば同じ結果になります(10011011)。
  • 実務的に確認する例(Python):
# 10進数 -> 2進数
bin(155)       # 出力: '0b10011011'
format(155,'08b')  # 出力: '10011011'(8ビット表示)

# 2進数 -> 10進数
int('10011011', 2)  # 出力: 155

FAQ

Q. 2進数の桁数はどう決める?
A. 最小の桁数は、元の数を表せる最大の を超えないように決めます。例えば155は を使うので8桁(からまで)が必要です。先頭に0を付けて桁数を揃えることはよくあります(例:8ビット単位)。
Q. 0と1以外の数字は出てこないの?
A. 2進数は「基数2」なので桁の値は0か1のみです。10進数のように0〜9の数字は使いません。
Q. なぜコンピュータは2進数を使うの?
A. 電気回路で「オン(1)/オフ(0)」を扱いやすいためです。物理的に信頼性が高く、実装が簡単です。

関連キーワード: 2進数変換、ビット、2の冪乗、進数変換、二進法、重み付き和、余り法、プログラミング補助
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

ITパスポート
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について