なぜだろう? はい、簡単です。

PS:読みたくない人は、YouTubeチャンネルのAlex Linkにビデオ版があります。
そもそも、私は教育を受けたプログラマーではなく、SpectrumのZ80プロセッサー(レニングラードまたはシンクレア)から始めました。多くの名前がありますが、意味は同じです。

はい、確かにBasicでは非常に遅く、画面上の画像が
15〜30秒で表示されますが、マシンコード(アセンブラー)にあり、瞬きする時間がないため、
画面にどのようにロードされたか。 それだけでなく、さまざまなコンパイラーがなくなる前に、Spectrumしか持っていない場合はどのようなコンパイラーにもなりました。 何をコンパイルしますか?
たとえば、私はリファレンスブックを取り、プリコンパイルされたアルゴリズムに従ってリーフにコマンドコードを書き、それをメモリセルに手動で入力するか、メモリへの順次データ入力のためにBASICにプログラムを単純に書きました。

私はこの学校全体を調べましたが、何がどのように機能するかを完全に理解しています。
それ以来、多くの変更が加えられ、Spectrum全体が1つのコントローラーに収まるようになりました。
コントローラーは毎日力を得ています。 しかし、プログラマーは、何らかの理由で、速度が低下しています。
彼らは人生の半分を最初のコントローラーのLEDの点滅に費やしました。
多くの人々Attiny13は天に昇ります。多くの異なるデバイスを組み立てることができるので、私はこれらについて議論しません。 しかし、これらのデバイスを繰り返すことに関する疑問が生じるとすぐに、私たちは助けを求めて叫ぶ膨大な数のフォーラムを観察します...問題の核心はヒューズを正しく設定することであり、もちろん問題は働くプログラマーを組み立てることです。

これはAttiny13コントローラーだけではありません...
ATmega8もアリーナに入りました。 わあ!!! 最大8kbのメモリ!!! これはすごい!!! あなたはそれでこれを行うことができます!!!
ATmega8は、Windows XPと同じように自信を持って長い間アリーナにいます。
しかし、進歩はまだ止まっておらず、プログラマーはATmega328を買う余裕がありますが、常に1ポイントではありませんでした-食料品店でビールに4ドルを費やして価格を考えることはできませんが、ラジオストアでは、何らかの理由で、コントローラに余分な1ドルを同情します。 残念ながら、これはほとんどすべての人に当てはまります。
次に何が起こるか。
誰も時間がなかった、彼は遅れていた。 子供の頃からプログラミングに携わっていた人たちはスーパープログラマになりましたが、喫煙者と喫煙者は神の発案者(プログラマ)しか見ることができません。
誰もがそれらを賞賛し、LEDをスムーズに点灯し、7セグメントインジケーターにtsiferkiを表示します。

そして、もちろん、彼らは温度も測定し、奇跡的に携帯電話の画面を接続し、長い間レジスターで遊んでいました(しかし、これらはお気に入りです)。

はい、しかし、このようにすべてを行っていないが、独自の何かを作成し、複雑にならないようにしたいすべての人々に何をすべきか。
最初に戻りますか? 最も原始的なコントローラーにとっては、レジスターの仕組みと、たとえばフラグの設定方法を理解するため、そしてすべてのヒューズモードを調べることが重要です。主なことは、ダイオードフラッシュプログラムをコピーから保護し、別のヒューズを燃やすことです。
幸いなことに、すべての家庭およびすでにすべてのスマートフォンでインターネットが出現しているので、この記事を読むことができます。裸の体を見るだけでなく、参考書を探して図書館に行くことなく勉強できることが重要です。 これのプラスとマイナスは何ですか。
Arduinoプラットフォームは、需要と学習意欲を研究して、同じATmega328コントローラーのアリーナに入ります(最初は168とATmega 8でした)。

ひどく理解できないコード(「神の言語」と言いましょう)は、アクセス可能で理解しやすいプログラミング言語に変わります。


プラットフォームのシンプルさとアクセシビリティのおかげで、数十万人の若者がプログラミングの世界を学び、さまざまな複雑さのデバイスを作成し続けています。 私が言えることは、私自身が1か月でLEDを点滅させてから、タッチカラー画面で完成したデバイスに到達したことです。 さらに、生産で約3年間安定して動作しています。

そして、これはたった1か月で、夕方の場所でテレビを見ています。
当時、私のデバイスは、1602年のようなスクリーンで遊んでいた昔のプログラマーに衝撃を与えました。
当然のことながら、プログラマーがアーキテクチャーとコントローラーのすべてのニュアンスの研究に一生(または一部)を費やしたとき、学校の生徒が1日を費やして一からやり直します。
Arduinoに対するプログラマの「悲鳴」は、死後のけいれんに似ています。
彼らは自分たちの時代が過ぎたことを理解しているだけで、もはや何もできない神ではありません。 今では彼らは以前のように崇拝されなくなり、学生は特別なスキルなしであらゆるデバイスのファームウェアをダウンロードしてフラッシュできます。
Arduinoの「スローダウン」についてはプログラマーから多くの「悲鳴」がありますが、Cyberlibのようなライブラリを覚えている、または覚えたくない人はいません。

多くの場合、IDEシェルにCを挿入します。 しかし、それはまだ同じArduinoであり、彼らはこの機会を、本当に速く必要としているグルメに提供しました。 通常のArduinoですが、ほぼすべてのタスクに十分です。
そして、チーム、レジスタ、フラグを掘り下げる必要はありません。 もっとスピードが必要ですか?!!! 効率が必要ですか?!!!
IntelやGoogleなどの多くの企業が協力して、1 GHzまでの非常に弱いコントローラーのバージョンをリリースしてください。



そして、経験豊富なプログラマーは行き止まりになります...プロセッサーのアーキテクチャー、命令、レジスターなどを研究する必要があります。 これはまだ人生の半分です。 ただし、すでに多くのレジスタとチームが存在し、アーキテクチャがより複雑であることを認めなければなりません。
しかし、そのようなArduinoの小学生Arduinchikは、プログラマが夢にも思わなかったプロジェクトをほんの数分で組み立てます。
ロジックによると、Arduinoで何か深刻なことを書くには、Mali 400グラフィックプロセッサでARM Cortex A8(A10 -20)を調べる必要があります。

私は既製のライブラリと開発を使用します。 そして私を信じて、私はあなたよりもデバイスを作成する時間を少なくします。
ただし、速度が必要なため、各レジスタとフラグを調査するまで、そのような技術を使用することは禁止されています。 すべて同じビールになります。 効率が必要な場合は、コントローラーをより早く購入してください。
Arduinoプラットフォームは、STM32やWi-FiモジュールESP8266などのコントローラーを制御しました。

はいはい!!! 学生はこれらすべてのコントローラーのアーキテクチャを勉強する必要はありません。彼はリクエストに適切なコントローラーを選択するだけで、特別な「ストレイン」なしでそれらをプログラムし、プログラムの作成と完成した結果を短時間で楽しんで、もはや16 MHzがないことに気付きます。
そして、あなたは元神です... Arduinoに向かって「叫び」続け、同じ原始的なATmega328を突っついてください。
真実に直面する。 あなたはあなたの見解で時代遅れであり、あなたはもはやプログラミングの分野の独占者ではありません。
玄関近くで祖母のように話す必要があります-「昔はそこにあった」。
そうではありませんが... Arduinoの人気が高まっているため、あなたにはまだ選択肢があります。-おばあちゃんのように座って叫ぶか、トレンディになって、Arduinoプラットフォームの最適化を支援し、社会に役立つ貢献をしてください。
Arduinoプラットフォームを作成および開発し、少なくとも何らかの形でその開発と実装に大衆に影響を与えたプログラマーを尊敬します。 彼らのおかげで、多くの人々が創造性を発揮し、超高価なプログラマーの注文に頼ることなく、自分の手で希望のガジェットを作成することができます。
私自身、プログラマーに繰り返し頼りました。プログラマーからは、非常に高い価格と呼ばれ、注文数は100個以上です。
常に別のポイントに打たれます...私たちは、モノクロからプッシュボタン、カラータッチ、8コアまで、ますますクールな電話を購入しています。 100ドル以上の電話を購入して申し訳ありません。コントローラーについては、10セント安くして、そこからすべてのジュースを絞り出そうとしています。 考えてみてください。
だから、Arduinoはクールです!!! 覚えておいてください、どんなタスクにもコントローラーがあります!!! よりコンパクトで高速なコードを作成するために、コマンドとレジスタを数か月間かけて調べて、コントローラーで1ドル節約しようとしないでください。
ビールやタバコを節約しましょう。
今日、ATTiny 13とAtmega8は、価格とパワーの関係上、もはや関連性がありません。 過去に生きるのではなく、未来に踏み込んでください。
あなたと一緒にアレックスリンク。 あなたに幸運を!