今回は僕が専門学校に通っていた時に学んだことについて少し書いてみようと思います!
そういえばこんなことを学んでいたなーと思い出しました
ゲームはもちろんですが、コンピュータについての謎が少し解けていくので楽しんでいただけたらと思い書いていきます!
簡単な説明なので、既にご存知の方には意味のないかもしれません汗
普段の生活で使うのは10進数
僕たちが普段使っている数値のことを10進数と言います
0〜9までの数字が存在していて、9の次は10といった感じで繰り上がる数字です
基本的にはこれに見せるようにコンピュータのプログラムを組んでいる訳です
16進数は見る機会がわりとある
16進数は16で繰り上がる進数のことです
だからといって、1、2・・・15、16と数えるのではなく
10からはAになります、0〜9の次はA〜Fとなり、Fが15で16になると繰り上がります
なので16進数で「10」と表記されている場合「16」となる訳ですね
身近なところだとゲームセンターの高すぎるスコアとかで使われたり、コンピュータで扱う数値を見やすくする為に存在しているような進数です
ファミコンの数字
ファミコンをプレイしていて、ステータスのカンスト(カウントストップ)の数値が
255という数字を見た事ありませんか??
これはファミコンに組み込まれているCPUが8ビットまでの数値しかやりとりが出来ない為に起こる事です
一部の蓄積されるデータに関しては、255を超えることがありますがかなり面倒な説明になってしまうので割愛します
1回で処理出来るのが8ビットまでという制限があるので、基本的には255でカンストしてしまうことがほとんどです
ではこの8ビットについて書いていきます
2進数
僕が教えてもらった言葉そのままで言いますと
コンピュータは0と1しか知らない、それはスイッチのオンオフと同じようなイメージだ
これで2進数というものを理解してくれればいいと、こんな感じで説明をされました
バイナリーなんて言い方をする時もあります
例:10→1010 3→0011 15→1111
この右側(2進数)の1つの桁を「bit(ビット)」と言います0と1しかないので2になる時に繰り上がるんです
ではこれが8ビット(8桁)まであるとどうなるのかと言いますと
255→11111111
ここまでの数字を扱うことが出来るんです!
めっちゃ難しそうに見えますよね?これ実はびっくりするくらい簡単にわかってしまうんです、一時期は8ビットまでなら見ただけで一瞬で数値が出てくるくらいでした
2進数を10進数に直す
それぞれのビットの数値を覚えるだけであとは暗算です
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
上にある数字を足すだけです、この場合8ビット全てが1になっているので
1+2+4+8+16+32+64+128=255ということになります
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
こちらの場合だと1+2+4+8=15となる訳ですね
上にある数字はお気づきの方のもいらっしゃると思いますが、ただ2倍になっていってるだけです
1番右にある「1」の役割をするビットは奇数か偶数かくらいで考えてもいいです、これがオン(1になっている)なら奇数、オフなら偶数です
これがコンピュータの内部で使われている数値です
※ちなみにとあるロケットの制御で使われたCPUはファミコンと同性能だったとか・・・
他のゲーム機
ファミコンの後継機となるスーパーファミコンは16ビットです!
65535までの数字を1度に扱うことが出来るようになります!すごいですねー!
そしてそして、ニンテンドー64
みなさんこの64ってなんやねん!!って思っていた方多いと思います
これは64ビットまで扱うことが出来るんですという意味なんですよ!数値に関してはもうよくわかりません!!笑
最後に
今回はこういうほんの少しコンピュータの中身を知って欲しいのと、覚えているうちに書いておきたいなーと思い書いてみました!
少しでもへーってなっていただけたら幸いです!
