囲碁とロック

好きなことについて

【囲碁計算機】123456789+987654321を計算してみた(前編)

2020-08-10 14:07:47 | 囲碁計算機

どうも、囲碁アートの関です。

 

今回から二回に分け、囲碁計算機で

123456789+987654321=1111111110

をやってみようと思います!!

1億2345万6789円と9億8765万4321円を足すと、11億1111万1110円になるそうです。欲しい

 

前回の記事では、囲碁計算機を十進法から二進法に進化させ

0が白で、1が黒

として、取られた石の色で計算結果を出力する方法を紹介しました。

 

「どうせ複雑でわかりにくいんでしょう・・・?」

 

と思われそうな気がしますが、

 

そうです!

正しく使うために要求される囲碁の力は、おそらく初段以上。

それも、囲碁勢の8割が最も苦手なジャンルとしているであろう「終盤」のやりとりです。

 

しかし、使う配置は少なく、2つのパターンの盤面を使い分けていきます。

0と1しかありませんから、慣れれば当てはめていくだけになります。

なにより、客観的に正しくなっていること自体が大切です。

 

2つのパターンをご紹介

まず「半加算器」です。

これは「0+0=00」「0+1=01」「1+0=01」「1+1=10」ができるというものです。

これが、大変がんばった形でして

二進法の計算をすると、答えの数字が二つになるんですよね。

たとえば1+1は、いつもの計算(十進法)だと「2」ですが

二進法だと「10」となります。次の桁への繰り上がりがあるのです。

そのため、一つの碁盤で二つの石が取られるようにした、というところを頑張って作りました。

 

1+1をしてみました。

1は黒石なので、AとBの両方に黒石を入れ、そこから囲碁の最善手を打っていきます。

上側で黒1の黒石が取られ(●)、続いて黒3により白石が取られました(〇)。

●〇・・・ということで10、つまり1+1=10 となったのでした。

 

今度は1+0ですが、0は白石ですので、Bの場所が白石になっています。

こうなると囲碁のいい手が変わって、黒1はここになります。

白石を取り(〇)、右下では黒5と打って黒が取られる(●)。

〇●という形で取られたので、「01」が答えとなりました。1+0=1ですね。

 

 

さて、これで「足し算」じたいはできました。

しかし、「2+2」ですとか「5+5」など、もっと大きい数を足し算するには、これだけだと無理です。

「繰り上がり」が起こった場合に、それも含めないといけません。

そこで、もう一つの盤面と使い分けることで、足し算を進める作戦を採用しました。

たとえば「11+11=111 110」(十進法だと3+3=6)をするとき

(この計算を間違えて表記していました、訂正いたします)

一桁目どうしの「1+1」と二桁目どうしの「1+1」(10+10です)をします。

いつもの十進法でいうと、25+36で「5+6」と「20+30」をするのと一緒です。

 

しかし、一桁目の「1+1」をすると「10」で、二桁目への繰り上がりの「1」が生まれています。

それを含めると、二桁目は「1+1+1」をしなければならない・・・

つまり、「20+30」だけでなく、「20+30+10」をするのと一緒です。

 

そのために左側の碁盤を導入。繰り上がりの計算に対応しました。

 

似ていますが、囲碁の戦況がちょっと異なっており、

「1+1+1」という、より複雑な形にも対応できるようになっています。

 

この二種類の碁盤を使い分け、

1回目の足し算&繰り上がりがない場合は、前者「半加算器」

繰り上がりがある場合は、後者「繰り上がり加算器」

により、いくら大きな桁の足し算でも可能となります。

 

そこで、「123456789+987654321」

二進法にしますと

「      111010110111100110100010101

+111010110111100110100010110001」

 

27桁と30桁ですが、前者の頭に「000」をつけて30桁として扱います。

30桁もの計算を、いかに行うのでしょうか・・・!?

 

後編に続きます!

 

 

「マルシェル」にて販売中

「囲碁の仕組みだけでコンピュータの基礎を作ってみた」

において、二進法の研究成果を解説しております。

図と文章で、より分かり易くなっているはずです!

ぜひお手に取っていただけたら嬉しいです!!



最新の画像もっと見る

1 コメント

コメント日が  古い順  |   新しい順
Unknown (iinna)
2021-10-27 11:17:52
2進法で 1=正しい 0=間違い
正しいことを2つ並べれば、当然答えも正しい
したがって 1+1 = 1

次は いかがでしょう・・・❔
大豆1合+米1合では、
隙間のために必ずしも2にはならぬという頓智みたいな算術です。
https://blog.goo.ne.jp/iinna/e/7b0f3b1d35e4c4adc78bfd269803a9aa

コメントを投稿