第17講 10進法をn進法に変換する

第1話 進法ってなに?
小学生の皆さんの中には、
10進法って何?n進法って何?
と思う人もいますよね。
n進法のことをn進数ともいいます。
つまり、進法=進数です。
さて、10進法とは10ごとに位の上がる数です。
10ごとに位が進むので、
10進数とも呼ぶわけです。

再びexcel 2016 vba 入門講義から引用します。
−−−−−−以下引用−−−−−
10進数は、皆さんが普通に使っている数で、
10ごとに位の上がっていく数です。
10ごとに位の上がっていく方法を10進法ともいいます。
10進法では、
0,1,2,3,4,5,6,7,8,9
の10種類の数字を使います。

コンピュータは、0と1の2進法(2進数)を使って処理をしています。
Goole傘下のディープマインドが開発した「アルファ碁」が、
現時点(2016/03/11)で世界一の一人とされる韓国のトッププロのイ・セドルに、
勝利しましたが、
アルファ碁も0と1だけで局面を処理しているわけです。
コンピュータは電気のon-offで処理するので、
2進法が最もコンピュータに適しているわけです。
使っている数字は0と1のみですし、
原理はand原理とor原理のみです。
たった2つの数字とたった2つの原理で、
最も複雑なゲームであるとされる碁で世界一のトッププロが、
圧倒されるまで強くなったのです。
and原理とor原理については、後の講で解説します。

では、2進数とは具体的にはどういう数でしょうか。
10進数の
1,2,3,4,5,6,7,8,9,10,11,・・・
に対応する2進数を書いてみると、
1,10,11,100,101,110,111,1000,1001,1010,1011,・・・
です。
何進法で書いてあるのかを()内の数字で表すことになっていますから、
11(10)=1011(2)
というわけです。

3進数は、0,1,2の3つの数字を使い3つごとに位が上がっていきます。
同じく10進数の
1,2,3,4,5,6,7,8,9,10,11,・・・
に対応する3進数を書いてみると、
1,2,10,11,12,100,101,102,110,111,112,・・・
となります。
例の表記を使うと、
11(10)=112(3)
です。

同様に、6進数なら0,1,2,3,4,5の6種類の数字を使い、
6ごとに位が上がっていきます。
10進数の
1,2,3,4,5,6,7,8,9,10,11,・・・
に対応する6進数は、
1,2,3,4,5,10,11,12,13,14,15,・・・
となります。
11(10)=15(6)

尚、1011(2)は「いちぜろいちいち」と読みます。
3進数や4進数でも同様です。

では、
10進数を2進数などに翻訳するにはどうしたらよいのでしょうか。
−−−−−−以上引用−−−−−
and原理とor原理は、引用にも書いてあるとおりに、
後の講で詳しく説明しますが、
ここでも簡単に説明しておきます。
andは日本語だと「と」です。
そして、orは「または」です。
ですから、
p and q
は「pとq」「pもqも」という意味ですし、
p or q
は「pまたはq」「pかq」をイメージすれば良いのです。
p or q
については、
意味とは書かずイメージすれば良いと書きましたが、
実は少し違う部分があるからです。
日本語の「pまたはq」「pかq」だと、
pかqのどちらか一方という意味しかないのが普通ですよね。
「現金か商品券を選べ」
なら、現金と商品券の内どちらか一方を選べという意味ですよ。
(もちろん、このような選択を迫るときには、
商品券の方が、数%得になるというような設定になっているでしょうね。
でなければ、全員が現金を選んでしまうでしょうから。)
ところが、
p or q
には「pもqも」も可なのです。
ですから、
「現金or商品券がもらえます。」
というときに、数学の世界(プログラミングの世界)では、
「じゃ、現金と商品券の両方とも頂いちゃう!」
という選択肢が可能になってしまいます。
つまり、
「現金or商品券」
といった場合には、
@ 現金のみ
A 商品券のみ
B 現金と商品券の両方
という3つの可能性があるのです。
断っておきますが、
英語の話ではなく、
あくまで数学やプログラミングの世界での話です。

解説が長くなってしまいましたが、
こんな説明を受けると余計に?????になってしまいますね。
後の講の詳しい説明まで、
待ってね。

さて、本線にも戻りましょう。
10進数(進法)を2進数(2進法)に翻訳するにはどうしたらいい?
のでしょうか。


第16講第8話へ 第2話へ

a


初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ