『我が衣手は露に濡れつつ』と『我が衣手に雪は降りつつ』の見分けが困難にならないか心配…。
2そうだね プレイ済み
こうなると状況は一変する。アナログの時代は優位を保っていた日本製だったが、デジタルの時代になると、同じようにデータを送れるのならば、品質よりも価格の安い方が有利となり、その結果、ただ高いだけの日本製よりも、安い海外製のケーブルの方が選ばれるようになってしまう。
昔と比べて日本の技術力は落ちたと思われがちだが、決してこれは日本の企業の努力が足りないからではない。このようなデジタル化によって、『努力をしなくても良くなってしまった』という面の方が大きいのだ。
よく、「日本の企業がどんなに努力を積み重ねても、アメリカがルールをひっくり返してしまう」と言われるが、その実情というのは、大体こんな感じなのだろう。日本の企業は、努力を積み重ねる大変さよりも、いつルールをひっくり返されるか分からないというリスクの方が大きくなってしまい、その一歩を踏み出せなくなってしまっているのではないだろうか。(終)
3そうだね プレイ済み
では次に海外製のケーブル。
送信側→受信側
0…0.0V→0.0V…0
1…5.0V→3.7V…1
0…0.0V→0.0V…0
1…5.0V→3.7V…1
「そんなバカな!?」と思うだろうが、これが2進数の力なのだ。
10進数で問題なのは、受信側が3.7Vだった場合、送信側は5Vだったのか、それとも4Vだったのかが分からなくなってしまうという事だったのに対し、2進数ならば、たとえ信号が劣化しても、それは送信側が5Vという信号を送ろうとしていたという事が容易に分かるので、信号の劣化なんて何の問題にもならないのだ。
0そうだね プレイ済み
これをさっきの日本製のケーブル、海外製のケーブルを使って送信するとどうなるだろう?まず日本製のケーブルの場合。
送信側→受信側
0…0.0V→0.0V…0
1…5.0V→5.0V…1
0…0.0V→0.0V…0
1…5.0V→5.0V…1
さすが日本製。正しくデータを送れていますね。
0そうだね プレイ済み
更に、データの送信の仕方も、このように変えてみる。
・送信側は、変換したデータを、2進数で1桁ずつ、4回に分けて送信する
・2進数で0の時は0V、1の時は5Vで送信する
・受信側は0Vの時は2進数で0、そうでない時は2進数で1と見なす
例えば5だったら、0(0V)、1(5V)、0(0V)、1(5V)…と順番に送信する。
0そうだね プレイ済み
ここで、この数字というのを、2進数に変換してみる。
・0…0000
・1…0001
・2…0010
・3…0011
・4…0100
・5…0101
・6…0110
・7…0111
・8…1000
・9…1001
0そうだね プレイ済み
ここで問題なのが、送信側は5というデータを送ったつもりでも、受信側は必ずしも5というデータを受け取れるとは限らないという事。送信側では5Vだったのが、ケーブルを伝わる途中の電圧降下により、受信側では3.7Vとかに落ちてしまうという事もあり、これでは正確なデータを受け取る事が出来ない。
そんなこんなで、どうすれば5Vの電気を5Vのまま送る事が出来るかというのを世界中の技術者が悩んでいる中、日本の企業は、ものすごい努力を積み重ねて、全く電圧が変化しないケーブルの開発に成功し、世界中を驚かせる(あくまで例えばの話で、実際は全くなんて出来ないだろうけど)。
そして、安いが信号が劣化しやすい海外製のケーブルよりも、高くても信号が劣化しにくい日本製のケーブルの方が支持され、MADE IN JAPANは世界中にはばたく事になる…というのが、日本のモノづくりの典型的なパターンだったりする。
0そうだね プレイ済み
例えば、そこら辺にあるような銅線のケーブルを使って、10進数で5という数字を、データとして別の場所に送りたいという場合、どうすれば良いだろう?
1つ考えられるのが、そのケーブルに流す電圧の高さを変えるという方法で、送信側が5というデータを送りたければ、5Vの電圧で電気を流す。受信側はその電圧を見て、5というデータが送られてきたという事が分かる。同じように、1だったら1Vの電圧、9だったら9Vの電圧で電気を流す、という具合。
1そうだね プレイ済み
2進数とは言うけれど、そもそも何の為に、こんな分かりにくい表現の仕方をするのだろうか?コンピュータにとって、2進数は様々なメリットがあったりするが、その中の1つに、『データの保存や通信を行う場合、10進数で扱うよりもデータが壊れにくい』というものがある。その辺りに触れてみるついでに、2進数が日本のモノづくりに与えた影響についても考えてみる。
8そうだね プレイ済み
ちなみに、3DSのイヤホン端子は、マイク端子を兼ねた4極ステレオミニプラグ(CTIA規格)になっていて、iPhone用として売られている、市販のマイク付きイヤホンを使う事が出来ます。
また、4極プラグからヘッドホン端子・マイク端子に分岐出来るケーブル(ainexのAVC-04等)というのもあり、これを使えば、ライン出力からマイク入力にそのまま繋げられるかも知れないので、試してみたい所です。
0そうだね プレイ済み
かつてのBASICもそうだったが、文字列を""で囲む時、文字列の後に何も続かない場合は、後ろの"を省略しても良かったりする(手抜き)。でも、プログラムを書く時はちゃんと囲むようにしようね。
5そうだね プレイ済み
発車メロディは短いフレーズの曲が多いので、自分でそれらしきものも作れそうですね。
ちなみに、JR-SH*なんかはFM音源で作られているという噂で、DX7(YAMAHA)を使って、あれとそっくりの音色で演奏している人がいたりします。
2そうだね プレイ済み
らいちさん>
3DSで動くプログラムやデータは、全てNintendo 3DSフォルダの中に格納されていますが、この中のファイルは全て暗号化されており、一般のユーザーがその中身を見ても分かりません(場所だけは当たりはついているんですけどね)。
もし、外部とのデータのやり取りが出来るならば、そのような暗号化されていないデータは、ルート直下のprivateフォルダの中に作られるはずです(うごメモやレコチョクでエクスポートしたデータはここに入ります)。
しかし、そういった仕組みはプチコンには備わっていないので、結果的に見る事は不可能です。
1そうだね プレイ済み
(∀Д∀)Sとよべ!さん>
もしかしたら、SDカードそのものに何らかの障害が起きたりしていないでしょうか?
以前、SDカードの中身をコピーしようとしたら、破損していてコピーできないファイルがいくつかあったという事がありました。
試しに、全データをフォルダ毎PCにバックアップしてみてはどうでしょうか?
破損しているファイルが多すぎるとか、バックアップする毎に破損ファイルが増えていくという状況であれば、そのSDカードを使うのは止めて、別のカードに変えた方が良いと思います。
0そうだね プレイ済み
実際はどうなのか分からないのですが、とりあえず、単純に2進数をそのまま音に置き換える例というのを挙げてみました。
あの音を聞いた限りでは、実際のデータレコーダは、もっと複雑な変換を行っているような気がします。
0そうだね プレイ済み
ポケモンも4Mbitという(当時としては)大容量のROMを採用しておきながら、自分のポケモンの後ろ姿が拡大ドット絵だった事を考えると、それでも足りないという時代だったと思います。
C言語は、ライブラリをリンクする際、そのプログラムでは使用しないコードまで含まれてしまうので、こういった容量がカツカツの分野では敬遠されてしまうと思います。
1バイトでも削りたいと思うならば、アセンブラしか無いでしょうね。
1そうだね プレイ済み
BASICが全盛期だった頃、録音が出来る機械と言えばカセットテープが主流で、主にパソコンに繋いでデータを録音する専用のカセットレコーダ、通称『データレコーダ』というものが存在した。あの「ピ~ギャアアアアアア~」という音は、その当時のデータレコーダの音をそれらしく再現したものだった、という訳。
ちなみに、カセットテープでなくても、この0と1が判別不能にならない状態で録音出来るものであれば別に何でも良く(MP3とかの圧縮率によっては壊れるかも知れない)、『マイコンBASICマガジン』の付録CD-ROMには、オーディオトラックにこの音を収録するという形で、投稿プログラムの配布を行っていた時があった。また、シャープ提供のパソコン情報番組『パソコンサンデー』では、副音声からこの音を流す事で、番組内で紹介したプログラムを受け取る事が出来た。
様々なデータを音に変換する事で、こんな事も出来るのだ。(終)
1そうだね プレイ済み
ここで、あるルールを元に、この2進数を音声に変換してみる。
・2進数で"1"…「ピー」という高い音
・2進数で"0"…「ポー」という低い音
これをBGMPLAY命令を使って鳴らすと、01000001だったら、「ポーピーポーポーポーポーポーピー」という音になる。これが人間には分からない位に高速で切り替わるので、「キョロキョロロロロロ…」という耳障りな音に聞こえるのだ。
単純に音として鳴らすだけなら何の意味も無いが、これを録音出来る機械を使って録音するとどうなるか。一度録音したものを再生させれば、いつでも「ポーピーポーポーポーポーポーピー」という音が流せるようになる。そして、これをコンピュータに解釈させると、01000001というデータに戻す事が出来る。つまり、『音声』を使った外部記憶装置になるのだ。
0そうだね プレイ済み
プチコンで扱われる文字は、それぞれ何らかの番号が付けられている。
例えば、"A"だったら65番、"1"だったら49番という具合。
更にこれを2進数に変換すると、それぞれ01000001、00110001になる。
「2進数なんて分からない」って人もいるだろうけど、とりあえず今はそういうもんだと思っておいてほしい(教えてほしいって人がいたら、別途投稿しますよ)。
ちなみに、このBIN$って関数は、SMILEBASICには存在しない、自分で作った関数で、このプログラム実行後だけ使える。
0そうだね プレイ済み