LoginSignup
13
7

ゲームで良く使われる2進数,16進数について

Last updated at Posted at 2024-04-16

こんにちは!
株式会社OGIX クライアントエンジニアのT.Iです!(弊社については最後に紹介があるのでぜひ見てください)

最近久しぶりにC++に触れる機会があり、ポインタでアドレス指定とかC#では殆どしないよな~と思いました。
その時に番地とかに使われる進数表記について纏めてみるか~といった気分になったので纏めていけたらなと思います。

そもそも進数とは?

進数とは…

あらかじめ定められたN 種類の記号(数字)を列べることによって数を表す方法。
(Wikipediaより抜粋)

との事です。

例えば
私たちが日常使用している10進数の場合だと、1つの位の値は0 ~ 9までを使用しますよね?
9に1を足す場合は位が1つ上の値を+1して元の位の値は0にします。(10になる)

これは0 ~ 9の10種類の記号(数字)を列ねることで数を表しています。

2進数とは

コンピューターの世界では、すべてのデータを2進数で表しています。
2進数というのは、1桁で0か1を使って表しています。

2進数の1桁では0か1なので 2通りになります。
このコンピューターのデータ最小単位を 1ビットといいます。

2は10、3は11、そしてまた桁上りします。
3桁なら3ビット、4桁なら4ビットとなっていきます。

コンピューターが2進数を使用する理由

コンピューターが2進数を使用する理由はIC(Integrated Circuit=集積回路)と呼ばれる電子部品から構成されていることが関係しています。
ICの各々のピンに電気で情報が与えられることによりコンピューターは動作しています。
そしてそれぞれのピンは0Vと5Vの電気のみを扱えるような仕組みになっています。
この0Vと5Vが2進数の0と1に該当するというわけですね。

IC
integratedCircuit.png

他の電圧のペアが使用される場合もあります

つまり、ICは複数のピンを使用することにより複数桁の2進数表記で表しているということです。

なお、2進数で数値を表す場合に0101のように上位の桁が0の場合でも0を明示している場合がありますが、その2進数を表すのにICのピンを何本使用しているのかの明示している為だと考えてください。
つまり、もし8本のピンで1を表す場合
00000001という8桁の2進数となります。

16進数とは

16倍ごとに1桁繰り上がる計数法。2進数の4bit(1ニブル)で、16進数の1桁を表す。

ICでは2進数を使用して数値などを表現していますが人間にとっては分かりづらいため、一般的に2進数を4bit毎に区切って16進数として数値を表記します。

16進数は2進数を4bit毎に纏めたもので、8bit,16bit,32bit等の長い2進数も、16進数表記であれば短く表現できます。

2進数 10進数 16進数
0001 1 1
0010 2 2
0001 0000 16 10
0110 0100 100 64
1 0000 0000 0000 0000 65536 10000

2,10,16進数表

10進数 2進数 16進数
0 0 0
1 1 1
2 10 2
3 11 3
4 100 4
5 101 5
6 110 6
7 111 7
8 1000 8
9 1001 9
10 1010 a or A
11 1011 b or B
12 1100 c or C
13 1101 d or D
14 1110 e or E
15 1111 f or F

まとめ

・2進数が使われる理由
IC(Integrated Circuit=集積回路)のピンに電気で情報を与えるため、0か1で情報をやり取りする仕組みになっている。

・16進数が使われる理由
2進数で大きな数値を表現しようとするととても長くなるため、人間にとって少しでも読みやすくするため。

今回はこちらを理解されていれば問題ないかと思います。

一緒に働く仲間を募集しています!

株式会社OGIXでは一緒に働いてくれる仲間を募集しています!
エンタメ制作集団としてゲームのみならず、未来を見据えたエンタメコンテンツの開発を行っています。

事業拡大に伴い、エンジニアさんを大募集しています。
興味のある方は下記リンクから弊社のことをぜひ知っていただき応募してもらえると嬉しいです。
▼会社について
https://www.wantedly.com/companies/company_6473754/about
▼代表インタビュー
https://www.wantedly.com/companies/company_6473754/post_articles/443064
▼東京オフィスの応募はこちら
https://www.wantedly.com/projects/1468324
▼新潟オフィスの応募はこちら
https://www.wantedly.com/projects/1468155

13
7
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
7