プログラミング
ロボ天使アン・エンジェル
この物語は、フィクションであり、実在する人物・団体とは関係ありません。
----- 第六話 「プログラミング」 -----
ぼくは、小学6年生の男子で、名前は、翼 太郎。
「ガンマンゲームで勝てる方法は、思いつかないよ。
代わりにゲーム作り教えてよ!」
アンに思いついた事を言ってみる。
アンは、首をかしげながら答えた。
「それでは、プログラミングを教えましょう。
パソコンでの基礎知識からで良いですか?」
「うん、いいよ。教えてください」
ぼくは、そう言ってペコリとお辞儀をした。
「コンピューターは、2進数で計算を行います。
2進数とは、0と1で計算する方法で
原理的には、メモリと呼ばれる装置に
電子を貯める番地があり、その番地の電子の
有無で1か0が決まります。ここまで質問は
ありますか?」
アンが聞いてくる。
「全部の数字を0と1で計算するの?」
ぼくは、聞いてみる。
「はい、全ての数値を0と1で計算します。
人間にわかり易いよう16進数に変換して
やりとりするのが普通です」
「16進数ってどんなの?」
「16進数とは、0から9までの数字と
アルファベットのAからFまでを数字として
使用した表示方法で、Aは10進数の10、
Fは10進数の15になります。
例えば16進数のFは、2進数で表すと
1111となります。これがどう人間に
使い易いかというと、4桁の2進数を
1桁で表す事ができます」
「へー、すごい短くなってる」
「2進数の1桁の事を1ビットと言います。
また、8ビットを1バイトと言います。
CPUは、コンピューターのメイン計算装置で
1度に処理できる単位で32ビットCPUと
呼ばれたりします。記憶装置のサイズを表す
のに1キロバイトなどと使われたりします。
ちなみに、1キロバイトは1024バイト、
1024キロバイトは、1メガバイト、
1024メガバイトは、1ギガバイト、
1024ギガバイトは、1テラバイトになります」
「うーん、覚えるのが多くて頭がくらくら
してきたよ」
「では、そろそろプログラミングについても
少しやりましょう。HSPという言語を使います。
printという命令で画面に表示させます。
for nextという命令で繰り返し処理をします。
for i=1,10
print i
next
このプログラムは画面に1から10までを表示する
プログラムです」
「へー、そうなんだ」
「プログラムは短いほど速そうに見えますが、
必ずしもそうではありません、さっきの
プログラムと同じ処理で速いプログラムは、
こうなります。
print 1
print 2
print 3
print 4
print 5
print 6
print 7
print 8
print 9
print 10
なぜ、これが速くなるかというと
繰り返しを行う判定を省略できるからです」
「へー、長い方が速いんだ」
「ブー、残念ながら、長いほうが速いというのも
必ずしもそうでなくて、例外があります。
例えば、自己書換型プログラムというものがあり、
主にハッカーなどの悪用する人の間で
よく使われる技術です。普通の人には、難解
すぎてまともな学習方法すら少ないです」
「へー、すごい技術なんだ」
「なにかすごい事をやろうと思って行きづまった
時にでも思い出せたら抜け出せる発見があるかも
しれません。今日は、このくらいにしましょう」
「へー、難しかったけど、面白かったよ。
また、やろうね」
ぼくは、頭くらくらしながらも、プログラムに
興味がわいていた。




