Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, コンパイラーおよびランタイム 移行ガイド

数学組み込み関数

新しいコンパイラーは、数学組み込み関数 (SIN または COS など) を評価するため、および浮動小数点指数のために、言語環境プログラムで用意されているルーチンを呼び出します。 これらのルーチンは、OS PL/I V2R3 ライブラリーで用意されているルーチ ンよりも正確であるため、最後の桁が異なる結果を生成することがありま す。

この違いの例として、三角法の教科書の巻末に記載されているような表を 作成する次のプログラムについて見てみましょう。

    trigtab: proc options(main);

      dcl degrees   fixed dec(5,1);
      dcl minutes   fixed dec(3,1);

      do degrees = 0 to 359;
        put skip edit( degrees ) ( f(5) );
        do minutes = 0 to .9 by .1;
          put edit( sind(degrees+minutes) ) ( f(9,4) );
        end;
      end;

    end;

このプログラムの出力は次のようになります。

       0   0.0000   0.0017   0.0035   0.0052   0.0070   ...
       1   0.0175   0.0192   0.0209   0.0227   0.0244   ...

作成される表は、使用する数学ライブラリーによって異なりますが、その場合で も 5 種類の値しかありません。 例えば、言語環境プログラムより前の数学ライブラリーを使用している従来のコンパイラーでは、140.1 の結果は 0.6414 になりますが、言語環境プログラムの数学ライブラリーを使用している従来のコンパイラーでは、結果は 0.6415 になります。 新しいコンパイラーでは言語環境プログラムの数学ライブラリーのみが使用されるため、新しいコンパイラーでも結果は 0.6415 になります。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)