ちょっと情報概論1
進数表現
言うたら、機械の中で使われている2進数の考え方と、
2進数をわかりやすくした16進数の考え方です。
Javaでもよく使う(かもしれない)ので、考え方だけは必ず覚えておきましょう。
通常の生活で使われているのが10進数と言う考え方。
* 1の位が数字が10になると、10の位の数字が1つ増える。
* 10の位の数字が10になると、100の位の数が1つ増える。
元の位の数字が「10」になると、次の桁を1つ増やすので、
「10」進数といいます。
じゃあ、「2」進数はというと、
元の位の数字が「2」になると、次の桁を1つ増やします。
で、「16」進数となれば、
元の位の数字が「16」になると、次の桁を1つ増やします。
<具体例を書いてみる>
10進数を考えて見ましょう。
1の位は
「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」
10個の数字から出来ております。
で、10の位はと言えば、
「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」
やはり、10個の数字から出来ております。
1の位が「9」に「1」を足してしまうと、「10」となります。
が、1の位では収まらなくなってしまうので、
「1」が10の位、
「0」が1 の位に収納されます。
つまり、(「1」×10)+(「0」×1)となります。
※ ×10は「10の位」×1は「1の位」です。
例) 「841」を上記のように表すと、
(「8」×100)+(「4」×10)+(「1」×1)
となります。
さて、
この「100」とか「10」とかの数字を別の表記に変更してみます。
100 = 10²
10 = 10¹
1 = 10⁰
つまり「841」なら、
(「8」×10²)+(「4」×10¹)+(「1」×10⁰)
となります。
まとめると、
1の位は10⁰
10の位は10¹
100の位は10²
1000の位は10³
以下桁数ごとに続く・・・。
それ以外の進数表現も
この何乗という考え方をそのまま取り入れます。
<2進数の場合>
全ての桁で
「0」「1」
の2つしか使いません。
なので、
1桁だと、「0」か「1」の2種類しか表現できません。
2桁になると、また「0」と「1」の表現が増えて、4種類に。
1の位は2⁰
2の位は2¹
4の位は2²
8の位は2³
以下桁数ごとに続く・・・。
例)
「27」を2進数で表記する
「11011」
(「1」×2⁴)+(「1」×2³)+(「0」×2²)+(「1」×2¹)+(「1」×2⁰)
<16進数の場合>
考え方は一緒です。
表記は「0」~「9」と「A」~「F」までです。
※「10」~「15」は桁数が溢れてしまうので、「A」~「F」となります。
例)「72」を16進数で表記する
「48」
(「4」×16¹)+(「8」×16⁰)
<まとめ>
[進数表現のキモ]
「その桁の数」×「何進数~(何桁目)」+「その下の桁の数」×「何進数~(何桁目)」・・・
コレが把握できれば、何進数が来ても問題なくなります。
(おまけ:2進数vs16進数)
格納記事
↓
↓
↓
言うたら、機械の中で使われている2進数の考え方と、
2進数をわかりやすくした16進数の考え方です。
Javaでもよく使う(かもしれない)ので、考え方だけは必ず覚えておきましょう。
通常の生活で使われているのが10進数と言う考え方。
* 1の位が数字が10になると、10の位の数字が1つ増える。
* 10の位の数字が10になると、100の位の数が1つ増える。
元の位の数字が「10」になると、次の桁を1つ増やすので、
「10」進数といいます。
じゃあ、「2」進数はというと、
元の位の数字が「2」になると、次の桁を1つ増やします。
で、「16」進数となれば、
元の位の数字が「16」になると、次の桁を1つ増やします。
<具体例を書いてみる>
10進数を考えて見ましょう。
1の位は
「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」
10個の数字から出来ております。
で、10の位はと言えば、
「0」「1」「2」「3」「4」「5」「6」「7」「8」「9」
やはり、10個の数字から出来ております。
1の位が「9」に「1」を足してしまうと、「10」となります。
が、1の位では収まらなくなってしまうので、
「1」が10の位、
「0」が1 の位に収納されます。
つまり、(「1」×10)+(「0」×1)となります。
※ ×10は「10の位」×1は「1の位」です。
例) 「841」を上記のように表すと、
(「8」×100)+(「4」×10)+(「1」×1)
となります。
さて、
この「100」とか「10」とかの数字を別の表記に変更してみます。
100 = 10²
10 = 10¹
1 = 10⁰
つまり「841」なら、
(「8」×10²)+(「4」×10¹)+(「1」×10⁰)
となります。
まとめると、
1の位は10⁰
10の位は10¹
100の位は10²
1000の位は10³
以下桁数ごとに続く・・・。
それ以外の進数表現も
この何乗という考え方をそのまま取り入れます。
<2進数の場合>
全ての桁で
「0」「1」
の2つしか使いません。
なので、
1桁だと、「0」か「1」の2種類しか表現できません。
2桁になると、また「0」と「1」の表現が増えて、4種類に。
1の位は2⁰
2の位は2¹
4の位は2²
8の位は2³
以下桁数ごとに続く・・・。
例)
「27」を2進数で表記する
「11011」
(「1」×2⁴)+(「1」×2³)+(「0」×2²)+(「1」×2¹)+(「1」×2⁰)
<16進数の場合>
考え方は一緒です。
表記は「0」~「9」と「A」~「F」までです。
※「10」~「15」は桁数が溢れてしまうので、「A」~「F」となります。
例)「72」を16進数で表記する
「48」
(「4」×16¹)+(「8」×16⁰)
<まとめ>
[進数表現のキモ]
「その桁の数」×「何進数~(何桁目)」+「その下の桁の数」×「何進数~(何桁目)」・・・
コレが把握できれば、何進数が来ても問題なくなります。
(おまけ:2進数vs16進数)
格納記事
↓
↓
↓