このプログラムは、命令とデータが区別されています。命令は'LD GR0,A'から、' RET'までです。データは、ラベルA, B,Cの部分です。命令とデータが区別でき るのはプログラマだけです。コンピューターにとっては、これをアセンブルし た機械語しか分からないので、どれが命令でどれがデータかは分かりません。 コンピューターにとって、命令であろうとデータであろうとただの1と0のビッ トの集まりにすぎません。後は、チューリング機械のように、それに従い動く だけです。
PGM START LD GR0,A ADDA GR0,B ST GR0,C RET A DC 1 B DC 1 C DC 0 END
次のプログラムを見てください3。これは、プログラマ から見るとデータの集まりです。しかし、コンピューターから見ると全く異なっ て見えます。この辺の事情は先週のプログラムの実習で体験したとおり、先の アセンブラのプログラムと全く同じです。さきのアセンブラのプログラムを機 械語にしたものを、ここではDC命令でメモリー上に書き込んでいるからです。
以上で、ノイマン型のコンピューターは命令とデータの区別が無いことが分かっ たと思います。
PGM START NEXT NEXT DC #1000 DC #0027 DC #2000 DC #0028 DC #1100 DC #0029 DC #8100 DC #0001 DC #0001 DC #0000 END
PGM START LAD GR1,-1 ONE NOP TWO NOP LAD GR1,1,GR1 LD GR2,P,GR1 ST GR2,ONE LAD GR1,1,GR1 LD GR2,P,GR1 ST GR2,TWO JUMP ONE A DC 1 B DC 1 C DC 0 P DC #1000 DC #0032 DC #2000 DC #0033 DC #1100 DC #0034 DC #8100 END