[目次へ][前へ][表紙へ]
 16進数

 最後に、本講座では使いませんでしたが、知っておくと後で役に立つと思いますので、16進数の説明をします。

 16進数は、それぞれの位が16のべき乗で表される数です。例えば1234という16進数は
  1 * 16の3乗 + 2 * 16の2乗 + 3 * 16の1乗 + 4 * 16の0乗
 と表されます。10進数でいうところの4660です。

 10進数は、各々の位に0から9までの数字が書けます。2進数は、0か1です。16進数は0から15までです。ただし、10をA、11をB、……、15をFと書きます。例えば、4E6Cという16進数は、
  4 * 16の3乗 + 14 * 16の2乗 + 6 * 16の1乗 + 12 * 16の0乗
 つまり10進数の20076です。

 10進数は、10で桁が繰り上がります。
  0、1、2、……、9、10、11、……、99、100、……
 2進数は、2で桁が繰り上がります。
  0、1、10、11、100、101、110、111、1000、……
 16進数は、16で桁が繰り上がります。
  0、1、2、……、F、10、11、12、……、1F、20、21、22、……、FF、100、……

 HSPでは、16進数の頭に$(または0x)をつけます。

 2進数の%1111は
  1 * 2の3乗 + 1 * 2の2乗 + 1 * 2の1乗 + 1 * 2の0乗
 つまり10進数の15、16進数の$Fです。

2進数 16進数
%1111 $F
%11110000 $F0
%111100001111 $F0F
%1111000011110000 $F0F0

 このように、2進数の4桁は16進数の1桁に対応します。

補足
・なぜプログラミングの世界では中途半端な数が多用されるのか
 本講座もそうですが、プログラミングの本や講座では、16や64や256、65536といった中途半端な数が多用されます。これは、16進数で表すと$10、$40、$100、$10000です。前に、コンピュータは絵も音も文章も、すべて2進数のデータとして取り扱っているという話をしました。16進数は2進数の4桁を1桁にまとめたものです。ですから、16進数で表した時にキリがいい数字の方がコンピュータにとってはキリがいいのです。

[目次へ][前へ][表紙へ] inserted by FC2 system