プログラムはこうして作られる、はメモリ操作で画素を表示する

この本は、初めてプログラムに触れる人を対象に、テトリス風の落ちてくる四角をうまく詰めていくゲームを作っていきます。

君のために専用の道具を用意することにした。プログラミング言語、開発環境、いくつかの養護や概念まで、初心者の君のために用意した。

私のプログラミング言語では大したことはできない。

この本では、著者がこの本のためだけに開発したSunabaを使います。なぜ、メジャーなプログラミング言語を使わないのでしょうか。

いまプログラミングを学ぼうとすると、開発環境を用意する必要があります。実は開発環境のインストールや設定でつまづく場合があります。

近くに相談できる人がいればいいのですが、本で独学している場合は、何を検索すればいいのかもわからない、インストール途中であきらめてしまうかもしれません。

そこで、テキストエディターはWindowsに標準装備のメモ帳を使い、命令の少ないプログラミング言語を設計し、実行するためのアプリケーションSunabaを開発したそうです。

深刻な問題は、できるようにならない人がいても仕方ない、と思われていることだ。教える側がベストを尽くしているとは思えない。

同感です。プログラミングは簡単ではありませんが、特別に難しいスキルではなく、誰でも習得可能だと思います。

ここでは試しに、

メモリ[65050] → 999999

と書き込んでみてほしい。


なんと、番地を指定して値を書き込んでいます。Sunabaのメモリの65050番地に999999という値を書き込んでいます。すると、Sunabaの画面中央に白い点が表示されるのです。

つづいて、番地を変えながら、65051番地や0番地、10000番地に書き込んで遊ぶようにうながします。

つぎに、値を999999ではなく、0や750000などのいろいろな値にして遊ばせます。

遊びながらメモリの番地と値の関係を感じてから、次の段階に進んでいきます。

プログラムとは「どういう順番で、どのメモリにいくつを覚えさせるか」がひたすら書かれたものだ。プログラムはメモリをいじることしかできない。

つまり、プログラムが期待どおりに動いたとは、メモリが期待どおりの値になった、ということです。このように考えると、デバッグやテストで役に立ちます。

4x4の正方形を画面の左上端に書くには、16個のメモリの番号を決めて、それらのメモリの中身を999999にすればいい。

メモリ[60000] → 999999 のような代入文を16行書いて、4x4の正方形を表示させます。

ここまでの内容で、画素の数だけメモリ代入文を書くことで、白黒画像を表示することができるようになりました。

タイトルとURLをコピーしました