● 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領域の先頭アドレス |
y | unsigned long型の乗数 |
presult | 結果を格納する FIXEDVAL領域の先頭アドレス (サイズ ≧ width × 2) |
width | px 、py の指す FIXEDVAL値の数値幅(バイト単位) |
戻り値
無し
説明
x × y を計算し、結果をpresult の指す領域へ格納します。
この関数は演算時の符号を考慮しません。単純に乗算のみを行います。
関数fixed_mul32 は、width の数値幅を持つ被乗数 x を unsigned long型の乗数 y で掛け、結果を presult の指す領域に格納します。引数 y がポインタではなく乗数そのものであるという事以外は、関数fixed_mul と同じです。
引数 px 、py の指す領域は、両方共 width が示す数値幅以上のサイズを持っている必要があり、width は 4 の倍数である必要があります。また、presult の指す領域は、width の2倍以上のサイズを持っている必要があります。
px と presult 、py と presult には、サイズの条件を満たしていても、同じ領域を指定する事はできません。