理系リアルタイム

大学院生の情報ブログ

情報

10進数・2進数・16進数を変換する方法(計算式)【応用情報】

投稿日:9月 3, 2019 更新日:

【応用情報技術者試験・基礎理論】

内容:10進数と2進数の間の変換、10進数と16進数の間の変換

2進数

我々が普段よく見る数は、10進数といって、1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …, 1903, …というように、1~9の数を使って表現します(9までいったら、次からは桁が上がり、10になります)。

しかし、コンピュータの大元は、0か1しか判断できません。

なので、我々の10進数表記を、0と1しか使わない表現に変換してあげる必要があります。

この0か1しか使わない表現方法を、2進数といいます。

2進数は、こんな感じで数を表現します。

0

1 ←ここまでは10進数と同じ

10 ←2進数では2を使えない(0か1しか使えない)ため、桁を上げてまた0から

11

100 ←先ほどと同じように、12とはできないため、桁を上げて表現

16進数

2進数では0~1の2つの数字、10進数では0~9の10つの数字しか使えませんでしたが、16進数では、0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F の10個の数字と6個のアルファベットを使って表現します。

考え方は2進数と同じで、Fまでいったら桁が上がります。

0

1

2

9 ← ここまでは10進数と同じ

A ← 16進数では、9の次はA

B

F ← 16進数で使える最大の記号

10 ← Fの次は、桁が上がって、また0から

11 

19 

1A

10進数 ↔ 2進数 の変換

10進数と2進数の対応は、次のようになっています。

10進数2進数
00
11
210
311
4100
5101

2進数から10進数に変換

これらの関係は、a を100の位、 b を10の位、 c を一の位として、2進数で abc と表されるとき(例えば、101)、次の式で計算できます。

2進数表記で abc のとき、10進数表記では

    \[a\times2^{2} + b\times2^{1} + c\times2^{0}\]

となります。

例えば、2進数の101は、10進数では

    \[1\times2^{2} + 0\times2^{1} + 1\times2^{0}  =  5\]

と、5になります。

桁があがっても、同様に変換することができます。

例えば、二進数110101は、10進数では

    \[1\times2^{5} + 1\times2^{4} + 0\times2^{3} + 1\times2^{2} + 0\times2^{1} + 1\times2^{0}  =  53\]

と、53になります。

10進数から2進数に変換

10進数から2進数への変換は、次のように行います。

(1)まず、10進数を2で割り、その商と余りを求める

(2)さらに商を2で割り、その商と余りを求める

(3)商が0になるまで繰り返す

(4)余りを、最後に求まったものから順に並べる。

2で割った余りは0か1なので、余りを並べたものは2進数表記になることが分ります。

たとえば、10進数表記の21を2進数に変換するとき、次のように計算します。

21÷2 = 10余り1

10÷2 = 5余り0

5÷2 = 2余り1

2÷2 = 1余り0

1÷2 = 0余り1

この余りを新しいものからならべて、10101となります。

10進数 ↔ 16進数 の変換

10進数と16進数の対応表は、次のようになっています。

10進数16進数
00
11
22
99
10A
11B
15F
1610
1711
2519
261A

※10進数の17は16進数では11だったりするからややこしいけど気を付けて。

変換の考え方は、2進数と同じです。

16進数から10進数に変換

a を100の位、 b を10の位、 c を一の位として、16進数で abc と表されるとき(例えば、1A0)、次の式で計算できます。

    \[a\times16^{2} + b\times16^{1} + c\times16^{0}\]

となります。

ただし、 a, b , c はそれぞれ16進数表示から10進数に直します。例えば、 b = B のとき、 b の値は11として計算します。

例えば、16進数でB3Aは、 10進数では

    \[11\times16^{2} + 3\times16^{1} + 10\times16^{0} = 2874\]

となります。

2進数と同様に、3桁以上のときの計算は、たとえば、16進数で11A92は、10進数に直すと

    \[1\times16^{4} + 1\times16^{3}  + 10\times16^{2} + 9\times16^{1} + 2\times16^{0} = 72338\]

となります。

10進数から16進数に変換

こちらも、2進数の場合と同様に求めることができます。

たとえば、10進数2874は、16で割っていくことで、次のように16進数で表現できます。

2874÷16 = 179余り10 (16進数でA)

179÷16 = 11余り3

11÷16 = 0余り11 (16進数でB)

この余りを新しい順から並べて、B3Aとなります。

-情報

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

記憶階層(レジスタ、キャッシュメモリなど)についてのまとめ【応用情報】

【応用情報技術者試験・ハードウェアとコンピュータ構成要素】 目次1 記憶の階層化1.1 各記憶装置の説明1.2 階層化する理由1.3 アクセス時間1.4 主記憶への書き込み方式 記憶の階層化 補助記憶 …

整列アルゴリズム(ソート)とその計算量をまとめてみた【応用情報】

【応用情報技術者試験・アルゴリズムとプログラミング】 以下では、先頭に最も小さい要素、最後に最も大きい要素が来るように、順番に並べることを考える。 目次1 バブルソート2 単純選択法3 単純挿入法4 …

モジュール結合度、モジュール強度とは【応用情報】

【応用情報技術者試験・システム開発技術】 応用情報技術者合格教本(2019(平成31年度【春期】) [ 大滝みや子 ] created by Rinker ¥3,218 (2019/09/1 …

パソコン音痴な僕が応用情報技術者試験の合格を目指します!【資格に挑戦】

みなさん、こんにちは! 何かしらの勉強がしたいと思い、応用情報技術者試験という資格を見つけたので受けてみたいと思います! もちろん、合格するつもりです。 ちなみに、僕はパソコン音痴で、ネットワークとか …

応用情報技術者試験のストラテジの「略字」単語と意味をまとめる【Part2. 経営工学、企業会計、標準化と関連法規】

【応用情報技術者試験・ストラテジ】 目次1 経営工学2 企業会計3 標準化と関連法規3.1 知識体系ガイド 経営工学 MRP(Material Requirements Planning, 資源所要量 …

理系リアルタイム 管理人

理系大学院生。

名古屋大学大学院工学研究科。

いつか人工衛星を打ち上げたいと夢見ている。生息地は度々変わるので不明。興味があること→物理/laser/機械学習/backpacker/ドローン/海外移住

理系リアルタイムでは、大学生・大学院院生に知ってもらいたい情報、体験を発信しています!!気になることがあれば、お気軽にご連絡ください。

管理人のTwitter もよろしくお願いします!!