目次ページ  前ページ  次ページ

3. 図形要素間の演算

3.3 代入文の解釈


3.3.2 代入文は数学的に見れば不正確な処理であること

 普通のプログラミング言語では、「A=B」の形の代入文は、右辺・左辺共に1つの値を扱います。「A=3.14」と書くと、変数Aが3.14になると解釈しますが、常にそうはなりません。もしAが整数型の変数名であれば、3が入ります。代入文は、単純に数を移す処理ではありません。細かいことを言うと、「3.14」は複数の文字並びのデータです。これを解読してビット並びの内部表現の数に直してAに代入しますので、書式変換が入ります。Aが実数型、Bが文字列型の変数名であるとき、「A=B」の代入文は、普通は定義がありませんのでエラーになります。これを救済する方法は、例えば、文字型データを数値に変換する明示的な型変換の関数を別に用意します。逆の「B=A」にはPRINT文を使います。ここで言いたいことは、代入文がどのような処理をするかは、プログラム言語の設計者が決めた、その言語の約束と、ユーザ側の使い方で決まることであって、数学理論から想像するような一意の結果にはならないことです。プログラミング言語が異なり、コンピュータのプロセッサが異なるとき、計算結果が同じにならないことは頻繁に起こります。同じ種類の計算をさせて、結果が異なるのでは困りますが、数値計算の場合には、実害が無い或る精度の範囲を勘案して結果を利用します。これが工学的な判断です。したがって、プログラムが正しく動作することの検定が必要であって、この作業を一つの専門とする公的機関が要望されるのです。
2008.3 橋梁&都市PROJECT

前ページ  次ページ