LogoMark.png

PositionalNotation の変更点


#author("2023-10-12T12:41:16+09:00;2023-10-12T12:37:37+09:00","default:inoue.ko","inoue.ko")
#author("2023-10-12T12:42:52+09:00;2023-10-12T12:41:16+09:00","default:inoue.ko","inoue.ko")
*位取り記数法
N 種類の記号によって数を表す方法
~

私たちは数を表現するのに ''0,1,2,3,4,5,6,7,8,9'' の10個の記号を使っています。一般に十進法といいますが、特にこれでなければいけない・・ということはなく、「記号N個で数を表現することにしましょう。」とみんなでルールを決めてしまえば、実は何の不自由もなく、数を表現することができます。十進法が世界に広まったのはフランス革命の革命政府がメートル法とともに十進法を定めて以来と言われていて、それ以前は様々な表現が用いられていました。
私たちは数を表現するのに ''0,1,2,3,4,5,6,7,8,9'' の10個の記号を使っています。一般に10進法といいますが、特にこれでなければいけない・・ということはなく、「記号N個で数を表現することにしましょう。」とみんなでルールを決めてしまえば、実は何の不自由もなく、数を表現することができます。10進法が世界に広まったのはフランス革命の革命政府がメートル法とともに10進法を定めて以来と言われていて、それ以前は様々な表現が用いられていました。

なぜ10進数がメジャーになったのか、強いていえば人間の手の指の数が両手で10本あるということ・・。特に10進法が優秀な記法であるというわけではありません。まずその呪縛から意識を解放することが、この先の理解に必要です。
なぜ10進法がメジャーになったのか、強いていえば人間の手の指の数が両手で10本あるということ・・。特に10進法が優秀な記法であるというわけではありません。まずその呪縛から意識を解放することが、この先の理解に必要です。

例えば ''1/3'' という量は、10進数の場合 0.333・・・・となって表現できませんが、3進数では 0.1SUB{(3)}; と、小数点以下1桁で表現できてしまいます。 
例えば ''1/3'' という量は、10進法の場合 0.333・・・・となって表現できませんが、3進法では 0.1SUB{(3)}; と、小数点以下1桁で表現できてしまいます。 
~
~



**一般記法
N進法(N個の記号を使う)の ABC.DE という数は、以下のような意味をもつものとしてして表現されます。これを計算すると10進数での表現が得られます。
#mathjax(A \times N^2 + B \times N^1 + C \times N^0 + D \times N^{-1} + E \times N^{-2})
~

***具体例
-10進法:使う記号は、''0,1,2,3,4,5,6,7,8,9'' の10個。
例えば、10進法の ''256.34'' は以下のように書けます。
#mathjax(2\times10^2 + 5\times10^1 + 6\times10^0 + 3\times10^{-1} + 4\times 10^{-2})

-5進法:使う記号は、''0,1,2,3,4'' の5個。
例えば、5進法の ''231.24'' は以下のように書けます。
#mathjax(2\times5^2 + 3\times5^1 + 1\times5^0 + 2\times5^{-1} + 4\times 5^{-2})
#mathjax( = 2\times25 + 3\times5 + 1 + 2\times0.2 + 4\times0.04 = 66.56)

-例えば、46個の記号(あいう・・わをん)を使った ''かきく.け'' は、
&small(あ,い,う・・ を 0, 1, 2・・として計算すると・・);
#mathjax(か\times46^2 + き\times46^1 + く\times46^0 + け\times46^{-1} )
#mathjax(= 5\times2116 + 6\times46 + 7 + 8\times0.02174 = 10863.173)
~
~

**2進法
コンピュータの世界でおなじみの表現です。コンピュータ、日本語にすると電子計算機ですが、その電子回路の中では、電圧の高低(電流のON/OFF)によって信号が処理されています。したがって数(データ)の表現には、それを1と0に対応させる2進法が利用されます。

-使う記号は2つ ''0 , 1'' です。
-例えば、4桁の2進数 ''1101'' は、10進数の13を意味します。
#mathjax(1\times2^3 + 1\times2^2 + 0\times2^1 + 1\times2^0)
#mathjax(= 1\times8 + 1\times4 + 0\times2 + 1\times1 = 13)

-参考:[[2進シリアルデータのイメージ>GoogleImage:serial data]]
~

***2進数の加算
2進数同士の加算は、以下のようなイメージになります。
以下、1110 + 101 = 10011(14+5 = 19)の計算です。
|10|10|10|10|10|10|40|C
|    |&color(red){''1''};|&color(red){''1''};| | | | &color(red){← 繰り上がり}; |
|    |    |  ''1''|   ''1''|  ''1''|   ''0''|CENTER:14 +  5|
|RIGHT:+)|    |    |  ''1''|  ''0''|  ''1''|~|

|10|10|10|10|10|10|40|C
|    |   ''1''|  ''0''|  ''0''|  ''1''|  ''1''|CENTER:= 19 |
~
~

**16進法
これもコンピュータの世界でおなじみの表現です。2進4桁分でちょうど16進1桁に相当するので、2進数表記の代用としてよく用いられます。

-使う記号は16個 ''0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F'' です。
-4桁の16進数 ''F52A'' は、10進数の 62,762 を意味します。
#mathjax(F \times16^3 + 5\times16^2 + 2\times16^1 + A\times16^0)
#mathjax(= 15 \times4096 + 5\times256 + 2\times16 + 10 \times1 = 62,762)
~

***具体例|色値
色を表すRGB値にはこの16進数が用いられます。例えば、
-#00 00 00 は、R:0 G:0 B:0 で黒
-#FF FF FF は、R:255 G:255 B:255 で白
-#FF 00 FF は、R:255 G:0 B:255 でマゼンタ

#記号は「それが16進数である」・・という意味です。

-参考:[[Webカラー:色名と16進表記の対応>http://www.colordic.org/]]
~
~
~