PHPで10進数から2進数への変換、またはその逆に変換してみます。
そもそも10進数とは何なのでしょうか。10進数は「0、1、2、3、4、5、6、7、8、9」の10種類の数を使って表します。0、1、2、3、4、5、6、7、8、9と順番に増加し、9の次になると、位が増加し「10」になります。10進数は、1、10、100、1000…と、どんどん位が繰り上がっていくものです。また、1は10の0乗(100)、10は10の1乗(101)、100は10の2乗(102)、1000は10の3乗(103)といった具合に表すこともできます。これが10進数です。
次に2進数とは、「0、1」の2個の数を使って表します。10進数の場合は、0、1、2、3、4、5、6、7、8、9と順番に増加し、9の次になると、位が増加し「10」になるが、2進数は0,1と順に増え、1の次になると、位が増加し「10」になります。なので、2進数は、20(1)、21(2)、22(4)、23(8)といった具合に位が繰り上がっていきます。これが2進数です。
今回、解説した10進数と2進数を理解するということは、PHPに限らずコンピュータへの理解を深めることに繋がります。
■環境
・Windows10
・WampServer Version 3.2.3 64bit
・PHP Version 7.3.21
■10進数を2進数に変換する
では、まずPHPで10進数を2進数に変換してみます。
■コード
<?php
echo decbin(2)."<br>";
echo decbin(12)."<br>";
echo decbin(100)."<br>";
?>
10進数を2進数に変換する場合は、decbin()関数を使用します。括弧内にパラメーター,引数として数値を入力します。これで変換することができます。
変換後、echo文で2進数に変換したものを出力してみます。
■実行
では、このスクリプトを「hello.php」という名前で保存し、実行させてみます。
実行させてみると、decbin()関数にパラメーター,引数として渡した数値が、2進数に変換されて出力されました。
■2進数から10進数に変換する
次に、今度は逆に2進数から10進数に変換してみます。
■コード
<?php
echo bindec(10)."<br>";
echo bindec(1100)."<br>";
echo bindec(1100100)."<br>";
?>
2進数から10進数に変換する場合は、bindec()関数を使用します。括弧内にパラメーター,引数として数値を入力します。これで変換することができます。
変換後、echo文で10進数に変換したものを出力してみます。
■実行
では、このスクリプトを「hello.php」という名前で保存し、実行させてみます。
実行させてみると、bindec()関数にパラメーター,引数として渡した数値が、10進数に変換されて出力されました。
コメント