(文字コード)・2進数2進数は0と1だけで数値を表現したものです。具体的には、0010010、11001のように表現されます。この表現は、コンピュータ内部で扱っている数値の表現方法なので、プログラムを作る際に理解したほうが良い知識のひとつです。Javaの変数に格納されている値も2進数で表現されています。2進数で正の整数を表現する場合、1番右の桁は1の位、その左が2の位、その左が4の位のように2のn乗の位で表すことができます。この説明を馴染みある10進数で行うと、1番右の桁は1の位、その左が10の位、その左が100の位のように10のn乗の位で表されます。下の図は、10進数の値17298を各桁の位(重み)の位置に割り当て、各桁の値と重みの掛け算の合計により、10進数の値を再計算した例です。2進数を10進数に変換する方法は、この10進数の考え方と同じです。違いは各桁に入れることができる値の範囲と位の値(重み)です。それでは、具体的な2進数の値を例に、その値が10進数でいくつかであるかを確認してきます。下の図の左側に青色の4桁の2進数が9個あります。この9個の2進数の各桁を、それぞれ対応する桁の位(重み)の位置に割り当て、その重みと各桁の2進数の値を掛け合わせた値の合計を求めることで10進数を計算しています。右の赤の数字が得られた10進数の値です。この説明では掛け算を使っていますが、2進数の場合には各桁の値は0か1なので、値が1の桁の重みを合計するだけで10進数の値を求めることができます。このように、コンピュータ内部では、0と1の数字だけで数値および文字を表現してます。コンピュータで2進数が使われている理由は、CPU(中央演算装置)などの電子回路を作る上で都合が良いためです。実際の電子回路では、0と1という値をもっておらず、電圧で0と1を表現しています。0は0ボルト、1は5ボルトというような感じです。