● fixed X - 関数リファレンス

符号無し乗算

    void __stdcall   fixed_mul(PFIXEDVAL px ,PFIXEDVAL py ,PFIXEDVAL presult ,int width );

    void __stdcall   fixed_mul32(PFIXEDVAL px ,unsigned long y ,PFIXEDVAL presult ,int width );

引数

引数名意味
px被乗数が格納されている FIXEDVAL領域の先頭アドレス
py乗数が格納されている FIXEDVAL領域の先頭アドレス
yunsigned long型の乗数
presult結果を格納する FIXEDVAL領域の先頭アドレス
(サイズ ≧ width × 2)
widthpxpy の指す FIXEDVAL値の数値幅(バイト単位)

戻り値

無し

説明

x × y を計算し、結果をpresult の指す領域へ格納します。
この関数は演算時の符号を考慮しません。単純に乗算のみを行います。

関数fixed_mul32 は、width の数値幅を持つ被乗数 x を unsigned long型の乗数 y で掛け、結果を presult の指す領域に格納します。引数 y がポインタではなく乗数そのものであるという事以外は、関数fixed_mul と同じです。

引数 pxpy の指す領域は、両方共 width が示す数値幅以上のサイズを持っている必要があり、width は 4 の倍数である必要があります。また、presult の指す領域は、width の2倍以上のサイズを持っている必要があります。

pxpresultpypresult には、サイズの条件を満たしていても、同じ領域を指定する事はできません。