ハードウェア学習教材としてのGBA
ハードウェアの原理を身につけていると,オペレーティング・システム(OS)がハードウェアを抽象化する意味や,プログラムごとにメモリー空間を割り当てる機能の意味を実感できる。メモリーの確保/解放を自動化してくれる仮想マシンのありがたみも理解できる。
記者の眼 - 「電子工作」で20年前に戻ってみませんか?:ITpro
<...>
そこでお薦めしたい教材がマイコンである。マイコンとはマイクロ・コントローラの略で,8ビットや16ビットの簡易なプロセサ・コアと一緒に主記憶用のRAM,プログラム格納用のフラッシュROM,各種I/O制御回路,アナログ/デジタル・コンバータ(A/Dコンバータ)などの回路を集積したものだ。
ハードウェアの理解という意味ではGBAもオススメです。ハードウェアの工作も必要ないし、何よりシンプルで分かりやすいハードウェアのおかげで、ソフトも作りやすい。シンプルでいて実は奥が深いので、マシン性能を引き出す楽しみもあります。
マジコンはちょっと敷居が高いかもしれませんが、そこさえ越えられれば開発はわりと楽チン。優秀なエミュレータも多くあるので、本体で施行錯誤を繰り返す手間も少ない。
もちろんハードウェアに対する理解という意味ではマイコンの方が上ですが、ハードに近い部分のプログラミングをするための素材としてGBAはオススメできるマシンと言えるのではないかと思います。
このへんは私が書くよりも、以前tekezoさんが書かれた記事の方が詳しくて分かりやすいですね。^^;
手軽な低レベルプログラミング環境として GBA はもっと評価されるべき
とか思って上記記事を読んでいたら:
とりあえず ROM WAITCNT を 0x4317 にセットして ROM 読み込みのキャッシュを有効にしよう!
ええーっ!そんなのがあるんですか!!全然知らなかった。ほんと、GBAは奥が深いです・・・