3.4 特定形式の数値に対する fplib 算術演算

fplib には、特定の形式の数値に対する算術演算を実行するための多数のルーチンが用意されています。

次の表に、これらのルーチンを示します。引数と戻り値の型には、常に同じ形式が使用されます。

表 3-1 算術演算ルーチン

関数 引数の型 戻り値の型 演算
__aeabi_fadd 2 つの float float x + y の結果を返します。
__aeabi_fsub 2 つの float float x - y の結果を返します。
__aeabi_fsub 2 つの float float y - x の結果を返します。
__aeabi_fmul 2 つの float float x × y の結果を返します。
__aeabi_fdiv 2 つの float float x ÷ y の結果を返します。
_frdiv 2 つの float float y ÷ x の結果を返します。
_frem 2 つの float float x ÷ y の剰余を返します(備考 a を参照)。
_frnd float float x を整数に丸めた結果を返します(備考 b を参照)。
_fsqrt float float x の平方根の結果を返します。
__aeabi_dadd 2 つの double double x + y の結果を返します。
__aeabi_dsub 2 つの double double x - y の結果を返します。
__aeabi_drsub 2 つの double double y - x の結果を返します。
__aeabi_dmul 2 つの double double x × y の結果を返します。
__aeabi_ddiv 2 つの double double x ÷ y の結果を返します。
_drdiv 2 つの double double y ÷ x の結果を返します。
_drem 2 つの double double x ÷ y の剰余を返します(備考 a および c を参照)。a c
_drnd double double x を整数に丸めた結果を返します(備考 b を参照)。b
_dsqrt double double x の平方根の結果を返します。
関連する概念
3.2 ソフトウェア浮動小数点ライブラリ fplib
3.3 fplib ルーチンの呼び出し
関連する参考文書
3.5 floats、long longs、doubles、ints の間の fplib 変換
3.6 float と double の間の fplib 比較
3.7 fplib C99 関数
関連情報
『Application Binary Interface (ABI) for the ARM Architecture』
a 
IEEE 754 剰余演算を実行する関数。この関数は 2 つの数値 xy をとり、z = x – ny を計算して z = x - n * y の値を返します。n は整数です。正確な結果を返すためには、xn の半分を超えないように z の値を指定します(yz の両方が正の値でも、x が負になる場合があります)。IEEE 754 の剰余関数は、C ライブラリ関数 fmod によって実行される演算とは異なります。C ライブラリ関数では、z の符号が常に x と同じです。IEEE 754 仕様において 2 つの n を使用できる場合には、偶数値が選択されます。この動作は、その時点の丸めモードとは関係なく実行されます。
b 
IEEE 754 で定義されている整数への丸め演算を実行する関数。この関数は、ある値を(現在の丸めモードに基づいて)整数に丸めますが、その整数は C 言語での int 変数としてではなく、浮動小数点数値形式で返されます。この数値を int 変数に変換するには、_ffix ルーチンを使用する必要があります。
c
IEEE 754 の remainder() 関数は _drem と同じ意味です。remainder()math.h で定義されます。
非機密扱いPDF file icon PDF 版ARM DUI0475KJ
Copyright © 2010-2014 ARM.All rights reserved.