「比較関数」の版間の差分
提供: Tommy6
細 |
細 |
||
(1人の利用者による、間の10版が非表示) | |||
36行: | 36行: | ||
{{!-}} | {{!-}} | ||
{{!}} [[isfinite]] | {{!}} [[isfinite]] | ||
− | {{!}} | + | {{!}} 与えられた値が有限値かどうかを検査します。 |
{{!-}} | {{!-}} | ||
{{!}} [[isinf]] | {{!}} [[isinf]] | ||
− | {{!}} | + | {{!}} 与えられた値が無限値かどうかを検査します。 |
{{!-}} | {{!-}} | ||
{{!}} [[isnan]] | {{!}} [[isnan]] | ||
− | {{!}} | + | {{!}} 与えられた値が NaN 値かどうかを検査します。 |
{{!-}} | {{!-}} | ||
{{!}} [[isnormal]] | {{!}} [[isnormal]] | ||
− | {{!}} | + | {{!}} 与えられた値が正規値(0, 非正規化数, 無限大, NaN のいずれでもない)かどうかを検査します。 |
{{!-}} | {{!-}} | ||
{{!}} [[isordered]] | {{!}} [[isordered]] | ||
− | {{!}} | + | {{!}} [[isequal]](''x'', ''x'') && [[isequal]](''y'', ''y'') の結果を返します。 |
{{!-}} | {{!-}} | ||
{{!}} [[isunordered]] | {{!}} [[isunordered]] | ||
− | {{!}} | + | {{!}} ''x'' もしくは ''y'' が NaN のときは非ゼロを、そうでないときは 0 を返します。 |
{{!-}} | {{!-}} | ||
{{!}} [[signbit]] | {{!}} [[signbit]] | ||
− | {{!}} | + | {{!}} 符号ビットを検査します。符号ビットが設定されているときは非ゼロを、そうでないときは 0 を返します。 |
{{!-}} | {{!-}} | ||
{{!}} [[any]] | {{!}} [[any]] | ||
− | {{!}} | + | {{!}} 引数のいずれかの要素の最上位ビットが設定されていれば 1 を、そうでないときは 0 を返します。 |
{{!-}} | {{!-}} | ||
{{!}} [[all]] | {{!}} [[all]] | ||
− | {{!}} | + | {{!}} 引数のすべての要素の最上位ビットが設定されていれば 1 を、そうでないときは 0 を返します。 |
{{!-}} | {{!-}} | ||
{{!}} [[bitselect]] | {{!}} [[bitselect]] | ||
− | {{!}} | + | {{!}} ''c'' の対応するビットが 0 であれば ''a'' のビット、そうでなければ ''b'' のビットを返り値のビットに設定します。 |
{{!-}} | {{!-}} | ||
{{!}} [[select]] | {{!}} [[select]] | ||
− | {{!}} | + | {{!}} 各要素について、''c'' の最上位ビットが設定されていれば ''b'' を、そうでなければ ''a'' を返り値の要素に設定します。 |
{{!}}} | {{!}}} |
2011年5月19日 (木) 16:22時点における最新版
比較関数はスカラもしくはベクトル引数をとり、戻り値はスカラもしくはベクトルの整数です。
関数 isequal, isnotequal, isgreater, isgreaterequal, isless, islessequal, islessgreater, isfinite, isinf, isnan, isnormal, isordered, isunordered, signbit は、スカラ型を引数にとるとき、比較が false であれば 0 を、true であれば 1 を返します。また、ベクトル型を引数にとるとき、false であれば 0 を、 true であれば -1 (すべてのビットを 1 にする)を返します。
関数 isequal, isgreater, isgreaterequal, isless, islessequal, islessgreater は、引数のいずれかひとつが NaN のとき、常に 0 を返します。関数 isnotequal は、引数がスカラ型でそのいずれかひとつが NaN のとき 1 を返し、引数がベクトル型でそのいずれかひとつが NaN のとき -1 を返します。
関数の一覧
1.1 : OpenCL 1.1で追加・変更
関数 | 概要 |
---|---|
isequal | 要素ごとに x == y の比較を行った結果を返します。 |
isnotequal | 要素ごとに x != y の比較を行った結果を返します。 |
isgreater | 要素ごとに x > y の比較を行った結果を返します。 |
isgreaterequal | 要素ごとに x >= y の比較を行った結果を返します。 |
isless | 要素ごとに x < y の比較を行った結果を返します。 |
islessequal | 要素ごとに x <= y の比較を行った結果を返します。 |
islessgreater | 要素ごとに (x < y) || (x > y) の比較を行った結果を返します。 |
isfinite | 与えられた値が有限値かどうかを検査します。 |
isinf | 与えられた値が無限値かどうかを検査します。 |
isnan | 与えられた値が NaN 値かどうかを検査します。 |
isnormal | 与えられた値が正規値(0, 非正規化数, 無限大, NaN のいずれでもない)かどうかを検査します。 |
isordered | isequal(x, x) && isequal(y, y) の結果を返します。 |
isunordered | x もしくは y が NaN のときは非ゼロを、そうでないときは 0 を返します。 |
signbit | 符号ビットを検査します。符号ビットが設定されているときは非ゼロを、そうでないときは 0 を返します。 |
any | 引数のいずれかの要素の最上位ビットが設定されていれば 1 を、そうでないときは 0 を返します。 |
all | 引数のすべての要素の最上位ビットが設定されていれば 1 を、そうでないときは 0 を返します。 |
bitselect | c の対応するビットが 0 であれば a のビット、そうでなければ b のビットを返り値のビットに設定します。 |
select | 各要素について、c の最上位ビットが設定されていれば b を、そうでなければ a を返り値の要素に設定します。 |
変更記録
―――― Version 1.1, The OpenCL Specification
より翻訳