ニッシー
詳細プロフィールへ
お問い合わせへ

こんにちは。ITネタブログの管理人のニッシーです。




2018-11-09

16進数はなぜアルファベットを使うのか?ポケモンの「V」との関係







そういえば16進数って、なぜ、数字としてアルファベットを使うのか、と疑問に思った方も少なからずいるのではないでしょうか?


当方も、数字なのになぜ文字を使うのかと混乱したときがありました。(笑)


今回は、16進数がなぜアルファベットを用いるのかについて、当方の見解も交えて見てみたいと思います。














16進数はなぜアルファベットを使うのか?



16進数になぜアルファベットが宛がわれているかといえば、おそらく、新たに数字を表す文字を発明するのが面倒だったからだと思います。


というのも、10進数は既に世界中に普及している記数法であり、0~9までの数の集まりを表せる文字(記号)が存在するのに対して、16進数は0~9までに加えて、10~15までも1桁で表す必要があるためどうしても新たな記号が必要だったためです。


※ 「記数法」とは2進数や10進数などの数え方をまとめた呼び方と思ってください。



16進数は1桁を表す記号が16種類必要



気付いている方も多いと思いますが、「n進数」といったとき、1桁を表す記号が「n種類」あるということがいえます。


例えば、


2進数・・・0、1の2種類の記号


10進数・・・0~9の10種類の記号


16進数・・・0~9、A~Fの計16種類の記号


というように、10進数であれば、0~910種類の記号を用い、2進数であれば、0、12種類の記号を用います。


そして、16進数であれば、0~9以外に10~15までの値を表す何らかの記号を用いて16種類の記号を用意しないといけませんよね。


各記数法に使用する記号の種類
2進数10進数16進数
000
111
--22
--33
--44
--55
--66
--77
--88
--99
----A
----B
----C
----D
----E
----F


10進数は10という値に、2進数は2という値に達してから桁が上がりますよね。


それと同様に、16進数は、16という値に達してから桁上がりさせたいということになります。


言い換えると、16進数は1桁で15までの数を表したいとうことです。


そこで、新たな記号を考案するくらいなら、既存のアルファベットを使えば手っ取り早くね?ということで、16進数ではアルファベットが数字として用いられているのだと思います。



16進数の計算についてはこちらもご覧ください。













ポケモンの個体値 V と32進数



ここからは話が少しとびマニアックな話になりますが、前述した16進数の話にも少しつながる内容となっています。





ところで、ポケモンはご存知でしょうか?


知らない方はこの章はスルーしてくださいね。


ここでは、ポケモンを交え32進数について触れたいと思います。



ポケモンの個体値とは?



ポケモンシリーズをやりこんでいた方なら知っていると思いますが、ポケモンのゲームにはその中に登場するポケモンの強さを示す数値である「HP、攻撃、防御、特攻、特防、すばやさ」というステータス項目があります。


これら6つのステータス項目はゲームのプレイヤーにも分かるようにディスプレイに示される形になっているのですが、これらの他にプレイヤーには見えない「個体値」といわれるパラメータが、各ステータス項目に影響を及ぼすように割り振られています。


この個体値は 0~31までの数値がランダムに存在し、例えば、攻撃ステータスの個体値が0のポケモンがいくらレベルを上げたところで、個体値31の攻撃ステータスのポケモンには遠く及ばない値にしかならないといった仕様になっています。


そして、この個体値が全ステータスにおいて最大の31で構成されるポケモンは「6V」と呼ばれ、ポケモンを極める上で欠かせない要素の一つとなっています。


それでは、なぜ、その個体値が31であることを「V」と呼ぶのかについて見ていきたいと思います。



V は32進数で31を表す



アルファベットの「V」は、32進数では31の値を表しています。


・(V)32 = 31


16進数においてA~Fまでのアルファベットが用いられる理由と全く同じです。


32進数では、31までの値を1桁で表さなければならず、そのために、A~Vまでのアルファベットを用います。


10進数と対応させて見てみましょう。


10進数32進数16G
0017H
1118I
2219J
3320K
4421L
5522M
6623N
7724O
8825P
9926Q
10A27R
11B28S
12C29T
13D30U
14E31V
15F3210


このように、31にアルファベットのVが対応していますよね。


これが、個体値31のポケモンがVと呼ばれる理由であると思います。





最後に



16進数はともかく、31までの数値を1桁で表すメリットって何かあるんですかね。(笑)


今回触れた記数法以外にも、フランスを含む西欧諸国では20進法が使われていたみたいですよ。


気になる方はググってみてください。


それでは次回にまたご期待を!














プロフィール

ニッシー
詳細プロフィールへ
お問い合わせへ

こんにちは。ITネタブログの管理人のニッシーです。