|
> No.1102[元記事へ]
ソースを読むだけであれば,Lazarusは不要ですが,
Lazarusは,
にあります。Windowsで使うのであれば,
win32 Lazarus + fpc 2.4.0 版を入手してください。
Windows向きのソースを読むのが目的であれば,
から,BASIC0300Src.zipを入手してください。
Ver.0.4とVer.0.5はMAC CarbonおよびLinux GTK2に対応させるための変更を含みます。
(FPUエラーの扱いが異なります)
Full BASIC規格に沿う数値計算は,数値式は1000000000を基底として計算し,
10進換算で19桁~27桁の有効数字を持つようにします。
そして,数値変数に代入するときに,四捨五入を実行して15桁の精度に劣化させます。
無理関数は一度Intel拡張精度実数に変換して計算し,その結果を17桁の十進数に丸めます。
その丸め方は17桁めが最も近い偶数にする丸めです。
無理関数で発生する例外は,Windows版(Ver.4.5以降)とVer.0.2,Ver.0.3ではOSの例外処理を利用し,
Ver.0.4とVer.0.5では計算のたびごとにFPUのステータスレジスタを読んで調べています。
|
|