*

スーパーマリオメーカー学会がコースを論理回路に見立た計算機を開発

公開日: : はやりもの


Sponsored Link


こんにちは、ヒロです。

スーパーマリオブラザーズは任天堂最高のヒット商品で多くの人がプレイしてるだけに正規のスーパーマリオの中にある絶妙なバグ等も見つけ出されて色んな裏技もあって遊び尽くせない名作ですが、そんなスーパーマリオのコースを自分で作れるスーパーマリオメーカーというものがあります。
その自分で作成できるコースの一部を論理回路に見立てて2進数の計算が出来る計算機を作る猛者がいて話題になってるようです。
ただ動画の中で説明はされてるもののついていけない人続出(笑)らしいので、論理回路とは何ぞや?というところからマリオメーカー計算機の説明まで細かく説明したいと思います(自分の理解の為にもw)。これを知ったからと言って世間で役に立つことはありませんが、凄いこと考える人いるなーと思ってみたり、こういう人が新たな発明品を作るんだろうなと感じながらみていただければと思います。

論理回路とは?(事前基礎知識)

※本当に基本的な内容なので、論理回路を理解してる方は読み飛ばしてください。

何故論理回路が必要?

何故論理回路が必要なのか?
これには、コンピュータの仕組みから理解する必要があります。
現在のパソコンやスマホなどのコンピュータは、人間が使っている10進数ではなく、2進数を使っています。
そもそもなぜ人間が10進数を使っているのかは、人間の指が一般的に10本あるからと言われています。
つまり、昔指で一つずつ数えていたのを指がなくなる10を一括りにして数えていたのをそのまま数字に当てはめたような感じですね。
つまり、10進数は

1,2,3,4,5,6,7,8,9
次は、1繰り上がって10,11,12,13,14,15,16,17,18,19,20…
と言った感じですね。

※余談ですがソロバンは、片手の指が5本だから5の玉で更にわかりやすく一時繰り上げみたいなイメージですね。

これに比較して、コンピュータは2進数を使っていますが、何故10進数ではなく、2進数を使っているのか?それは、誤作動を起こりにくくするためです。

どういうことかと言うと
例えば、電圧が10Vの時が2進数の0Vの時に2進数の0とコンピュータが認識するとした時、常に電圧を10V、0Vちょうどにするのは不可能です。

なので例えば、5V以上を2進数の1、5V未満を2進数の0とすれば、多少電圧がぶれても2進数の0と1を正確に伝えることが出来ます。
しかも、省エネの為に電圧は10Vではなく、5Vとか1Vとかにしないといけなくなっても、0と1だけなら判別しやすいです。
また、電圧をONとOFFするだけで制御出来るので回路が簡単に出来集積度まますことが出来ます。

しかし10進数の場合は、電圧が10Vの場合でも
0.5V未満は10進数の0
0.5V以上1.5V未満は10進数の1
1.5V以上2.5V未満は10進数の2
2.5V以上3.5V未満は10進数の3
3.5V以上4.5V未満は10進数の4
4.5V以上5.5V未満は10進数の5
5.5V以上6.5V未満は10進数の6
6.5V以上7.5V未満は10進数の7
7.5V以上8.5V未満は10進数の8
8.5V以上は10進数の9
のようにしないといけなくなり、
電圧がONとOFFの制御だけでいい2進数と違い、10進数では、細かく電圧を制御しないといけなくなる為、高速で転送することが非常に困難になります。

このような理由でコンピュータは2進数が用いられていますが、これらの2進数の計算で用いられるのが論理回路です。

論理回路の種類

論理回路の種類には次のようなものがあります。

AND(論理積)回路
image

OR(論理和)回路

 

 

image

NOT(否定)回路

image

NAND(否定論理積)回路

image

NOR(否定論理和)回路

image

EXOR(XOR排他的論理和)回路

image

論理回路はデジタル電子回路というもので使用されます。コンピュータで使われる回路で実際の回路図を視覚的にわかりやすくした回路です。

電気的な動きを見ようとすれば、トランジスタやコンデンサや抵抗、ダイオードなどを用いたアナログ電子回路というものを見ないといけないですが、2進数の0と1の動きを見るだけならデジタル電子回路で使用される論理回路で充分確認できます。

それでは、論理回路の説明をして行こうと思います。

論理回路の説明

論理回路とは、2進数の計算をする回路です。
コンピュータはこの回路を大量に組み合わせて作られていますが、基本の回路を組み合わせてるだけなので基本を押さえましょう。

複数、あるいは単独の入力に対して決められたルールで出力を出すのが論理回路です。
ここを押さえてマリオメーカー計算機を理解して行きましょう。

AND回路

image
AND回路とは、ふたつの入力のうち両方とも1の時に出力1を返す回路です。

入力A AND 入力B = 出力

とすると

① 0 AND 0 = 0
② 0 AND 1 = 0
③ 1 AND 0 = 0
④ 1 AND 1 = 1

と④のように両入力が1の時だけ1になります。

OR回路

image
OR回路とは、ふたつの入力のうちどちらか片方でも1の時に出力1を返す回路です。

入力A OR 入力B = 出力

とすると

① 0 OR 0 = 0
② 0 OR 1 = 1
③ 1 OR 0 = 1
④ 1 OR 1 = 1

と②③④のようにどちらか一方でも入力が1の時に1になります。

NOT回路

image
NOT回路とは、入力されたものを反転する回路です。

NOT 入力= 出力

とすると

① NOT 0 = 1
② NOT 1 = 0

と入力が0の時1、入力が1の時0になります。

NAND回路

image
NAND回路とは、AND回路とNOT回路を合わせた回路といえばわかりやすいでしょうか?
入力のどちらかが0なら出力が1になります。

入力A NAND 入力B = 出力

とすると

① 0 NAND 0 = 1
② 0 NAND 1 = 1
③ 1 NAND 0 = 1
④ 1 NAND 1 = 0

と④のようにどちらか一方でも入力が0の時は1になります。覚えにくい時は一度ANDをとって、0と1を反転させればOKです。

NOR回路

image

NOR回路とは、OR回路とNOT回路を組み合わせた回路です。入力が両方0の時のみ出力が1を返します。

入力A NOR 入力B = 出力

とすると

① 0 NOR 0 = 1
② 0 NOR 1 = 0
③ 1 NOR 0 = 0
④ 1 NOR 1 = 0

と①のように両入力が0の時だけ1になります。覚えにくい時は、一度ORをとって0と1を反転すればOKです。

EXOR回路

image
EXOR回路とは、どちらか片方の入力だけが1の時だけ出力に1を返す回路です。

入力A EXOR 入力B = 出力

とすると

① 0 EXOR 0 = 0
② 0 EXOR 1 = 1
③ 1 EXOR 0 = 1
④ 1 EXOR 1 = 0

と②③のように片方だけの入力が1の時だけ1になります。

2進数から10進数への変換の仕方

2進数で計算してもその計算結果を10進数で表せなければ意味がありません。

そこで2進数から10進数への変換の仕方も載せておきます。

10進数は0〜9までの10個の数字を使って数字を表しますが、
2進数は0と1だけを使って数字を表します。
つまり
10進数 2進数
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001
10 1010

上記のように1の後にはすぐに桁上げをするということになっている。

2進数から10進数への変換の仕方は、

1101なら

image

のように計算します、

2進数の足し算を考えてみる

2進数の1桁は 0 か 1 の値しかとりません。 この2進数での1桁のことを 「1 ビット bit」といいます。 はじめに,「1 ビットの足し算回路」について考えます。 つまり,
0+0=0
0+1=1
1+0=1
1+1=2
という4通りの場合について正しい答えを出力するための回路です。 10 進数での 「2」 という数は2進数だと 「10」 と表されます。 ですから,上の例を2進数で表現すると,
0+0=0
0+1=1
1+0=1
1+1=10

と書けます。
このような計算をどのような電子回路で実現できるでしょうか? 中身は後で考えるとして,外から見れば2本の入力信号線と2本の出力信号線を備えた回路になるはずです。 つまり,足し算の2つの入力を A, B という2本の入力信号線に, 出力のうち「20 = 1」の桁の数字を Y0 という出力信号線, 「21 = 2」の桁の数字を Y1 という出力信号線に割り当てます。 全体としては,図 1のような形になるわけです。
image
図 1 1桁の足し算回路。Y0 は 2^0 の桁の数,
Y1 は 2^1 の桁の数を出力する。

つぎに,この回路の中身を考えましょう。出力 Y0 と Y1 とに分けて考えます。 出力 Y0 と入力 A, B の間には表 1 のような関係があります。
表 1 「1ビット」の足し算回路。入力 A, B と 2^0 の桁の出力 Y0
A B Y0
0 0 0
0 1 1
1 0 1
1 1 0
この関係を論理式を使って書くために,次のように考えます。 表 1 から,「出力が 1 になる」のは,「A=0 かつ B=1」の場合と, 「A=1 かつ B=0」の場合との2通りあります。これを式で表せば,
image
となります。 この関係は,論理回路のところに出てきた「排他的論理和 EXOR」と同じですね。 つまり,EXOR 回路を使えば「一桁の足し算の 2^0 = 1 の桁を得る回路」になるわけです。
つぎに,出力 Y1 と入力 A, B の間には表 2のような関係にあります。
表 2 「1ビット」の足し算回路。入力 A, B と 2^1 の桁の出力 Y1
A B Y1
0 0 0
0 1 0
1 0 0
1 1 1
これを式で表せば,
image
となります。
この関係は,「論理積 AND」そのものですね。 つまり,AND ゲートを使えば1桁の足し算の繰り上がりの部分, 2^1 = 2 の桁を得る回路になるわけです。 これらのことをまとめれば,1ビットの足し算をするための回路としては全体としては,図 2 のような構成になります。
image
図 2 「1ビット」の足し算回路 (2)。XOR ゲートと AND ゲートの組み合わせで実現できる。


スーパーマリオメーカー計算機解説(本題)

前置きが非常に長くなりましたがいよいよ本題です。
スーパーマリオメーカーでは、コースを電気回路に見たてて論理回路を組みますが、回路によって電流や入出力を変えたりします。
まず最初に簡単な論理回路や足し算をしているスーパーマリオメーカー計算機の動画から解説して行きましょう。

基礎編動画

まずはこちらの動画です。
スーパーマリオメーカー計算機の基礎からです。現在は集積度もスピードも格段にアップしてます。後ほどそちらも紹介いたします。


AND回路

先ずはAND回路です。
image
入力Aと入力Bの左側にノコノコがいてノコノコを入力の左側から右に向けて放つと計算開始です。
入力が0の時、ブロックを壊す。
出力を上のスペースが1で下に落ちたら0と定義すると

① 0 AND 0 = 0
→入力Aと入力Bのブロックを壊すと下に落ちる
② 0 AND 1 = 0
→入力Aのブロックを壊すと下に落ちる
③ 1 AND 0 = 0
→入力Bのブロックを壊すと下に落ちる
④ 1 AND 1 = 1
→入力AとBは壊さないと下に落ちずに上のスペースに止まる

このように入力と出力を定義した上でコースを考え作ると論理回路と同じ役目を果たすことが出来ます。
動きについては動画を見れば、一目瞭然ですが一度考えて理解すると格段に動画の動作がわかりやすくなります。

OR回路

続いてOR回路です。
image
入力A(上側)と入力B(下側)の左側にノコノコがいてノコノコを入力の左側から右に向けて放つと計算開始です。
入力が0の時、ブロックを壊す。
出力を上のスペースが1で下に落ちたら0と定義すると

① 0 OR 0 = 0
→入力Aと入力Bのブロックを壊すと下に落ちる
② 0 OR 1 = 1
→入力Aのブロックだけを壊すと上に残る
③ 1 OR 0 = 1
→入力Bのブロックだけを壊すと上に残る
④ 1 OR 1 = 1
→入力AとBは壊さないと下に落ちずに上のスペースに止まる

AND回路は直列にコースを繋ぎ、OR回路は並列にコースを繋いでるイメージですね。
動きについては動画を見れば、一目瞭然ですが一度考えて理解すると格段に動画の動作がわかりやすくなります。

NOT回路

続いてはNOT回路です。
image
NOT回路は入力が一つなので非常にシンプルですが、この回路で出力の1のスペースの上側にコースを組むことで反転することを覚えておくと、後の回路がわかりやすくなります
入力の左側にノコノコがいてノコノコを入力の左側から右に向けて放つと計算開始です。
入力が0の時、ブロックを壊す。
出力を上のスペースが1で下に落ちたら0と定義すると

① NOT 0 = 1
→入力ブロックを壊すと出力1のスペースを乗り越えて下へ行く
② NOT 1 = 0
→入力ブロックを壊さないと出力1のスペースに行く


NOT回路はシンプルですが基礎となる回路なのでしっかり理解する必要があります。
動きについては動画を見れば、一目瞭然ですが一度考えて理解すると格段に動画の動作がわかりやすくなります。

NAND回路

続いてNAND回路です
imageimage
NAND回路はAND回路の後にNOT回路を接続して作られてます。
ANDの結果を最後に反転するイメージですね。
動画では検証を割愛されているので解説を下につけておきます。
入力Aと入力Bの左側にノコノコがいてノコノコを入力の左側から右に向けて放つと計算開始です。
入力が0の時、ブロックを壊す。
出力を上のスペースが1で下に落ちたら0と定義すると

① 0 NAND 0 = 1
→入力Aと入力Bのブロックを壊すと上に残る
② 0 NAND 1 = 1
→入力Aのブロックを壊すと上に残る
③ 1 NAND 0 = 1
→入力Bのブロックを壊すと上に残る
④ 1 NAND 1 = 0
→入力AとBは壊さないと出力を乗り越えて下に落ちる。

ANDとNOTを理解してると動画での説明はないけど大丈夫ですね。


NOR回路

続いてNOR回路です

imageimage
NOR回路はOR回路の後にNOT回路を接続して作られてます。
ORの結果を最後に反転するイメージですね。
動画では検証を割愛されているので解説を下につけておきます。
入力Aと入力Bの左側にノコノコがいてノコノコを入力の左側から右に向けて放つと計算開始です。
入力が0の時、ブロックを壊す。
出力を上のスペースが1で下に落ちたら0と定義すると

① 0 NOR 0 = 1
→入力Aと入力Bのブロックを壊すと上に残る
② 0 NOR 1 = 0
→入力Aのブロックを壊すと出力を乗り越えて下に落ちる
③ 1 NOR 0 = 0
→入力Bのブロックを壊すと出力を乗り越えて下に落ちる
④ 1 OR 1 = 0
→入力AとBは壊さないと出力を乗り越えて下に落ちる。

ORとNOTを理解してると動画での説明はないけど大丈夫ですね。

その他の計算動画

他の計算機の動画も添付します。こちらもわかりやすいものからわかりにくいものまであると思いますが、全て解説して行きたいと思いますが、少し時間を下さい。
一度自分で動画見て考えて見るのも楽しいと思うのでどうぞご覧ください。

フラワーそろばん&スイッチ集 Flower Abacus & Switch Collection(20桁/digit)


スターそろばん Star Abacus(99,999,999)


マリオメーカーで32bit計算機

https://m.youtube/x01FSCEjTIc

マリオメーカーで4,294,967,295+4,294,967,295を計算してみた



【34bit】マリオメーカー計算機で171億略+171億略の結果を表示してみた【スーパーマリオメーカー】


【64bit】マリオメーカー計算機64で1844京+1844京を計算してみた



割り算と引き算(10÷10、10-10)Division and Subtraction


まとめ

計算機の進化した姿は、まだまだいっぱいありますのでこの投稿し解説して行きます。
動画みて理解出来るものもあるかもしれませんが、凄く考えられて作られているのはわかると思います。
こういう発想を出来る人が新しい技術を生み出せるとおもうので、今後の未来も期待できそうです。

 

 



ブログ村のトレンドニュースの注目記事で1位になった記事です。

消費税について考察

良かったらブログランキング2つクリックしてやってください。
にほんブログ村 ニュースブログ トレンドニュースへ
にほんブログ村


トレンドニュース ブログランキングへ

Website Pin Facebook Twitter Myspace Friendfeed Technorati del.icio.us Digg Google StumbleUpon Premium Responsive

関連記事

no image

2016年版10月29日はインターネット誕生日。由来やインターネットの歴史について紹介します。

こんにちは、ヒロです。 10月29日はインターネット誕生日です。由来やインターネットの

記事を読む

no image

2016年版10月5日は時刻表記念日。由来や時刻表の歴史について紹介します。

こんにちは、ヒロです。 10月5日は時刻表記念日です。由来や歴史について紹介します。

記事を読む

no image

2016年版9月13日は世界法の日。由来や国際法や中国との関係について紹介

こんにちは、ヒロです。 8月13日は世界法の日です。世界法とは聞きなれない言葉ですが、

記事を読む

no image

2016年版9月27日は世界観光の日。由来や世界で人気の観光地TOP10を紹介

こんにちは、ヒロです。 9月27日は世界観光の日です。 由来や世界で人気の観光スポッ

記事を読む

no image

2016年版10月4日は宇宙開発記念日。由来や世界と日本の宇宙開発の歴史を紹介

こんにちは、ヒロです。 10月4日は宇宙開発記念日です。 由来や世界の宇宙開発の歴史

記事を読む

no image

2016年版10月17日は沖縄そばの日。由来や歴史、沖縄人厳選のお店を紹介

こんにちは、ヒロです。 10月17日は沖縄そばの日です。 由来や沖縄そばの歴史、沖縄

記事を読む

no image

2017年版8月9日は形状記憶合金の日。由来や原理、使われ方などを紹介

こんにちは、ヒロです。 8月9日は形状記憶合金の日です。 形状記憶合金について知らない人

記事を読む

no image

解けなきゃ恥!?科学者の威信をかけてデスバレーの動く石の謎を解明。動作原理について

こんにちは、ヒロです。 デスバレーの動く石をご存知でしょうか? ひとりでに数キロ単位

記事を読む

no image

2017年版7月4日は梨の日。梨の種類や美味しい食べ方を紹介。ふなっしーの動向は?

こんにちは、ヒロです。 7月4日は梨の日です。 明らかに語呂合わせで制定された日でわかり

記事を読む

no image

2017年版7月22日は円周率近似値の日。円周率の求め方や近似値の種類を紹介

こんにちは、ヒロです。 7月22日は円周率近似の日らしいです。円周率の日じゃなくて円周率近

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


  • 各種情報商材検索 ※「投資」など自分が調べたいキーワードで情報商材の 検索が出来ます。参考にどうぞ。
               
  • Top television blogs}
PAGE TOP ↑