「比較関数」の版間の差分

提供: Tommy6
移動: 案内検索
 
(1人の利用者による、間の11版が非表示)
33行: 33行:
 
{{!-}}
 
{{!-}}
 
{{!}} [[islessgreater]]
 
{{!}} [[islessgreater]]
{{!}} 要素ごとに (''x'' < ''y'') {{!}}{{!}} (''x'' > ''y'') の比較を行った結果を返します。
+
{{!}} 要素ごとに (''x'' &lt; ''y'') <nowiki>||</nowiki> (''x'' &gt; ''y'') の比較を行った結果を返します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[isfinite]]
 
{{!}} [[isfinite]]
{{!}}  
+
{{!}} 与えられた値が有限値かどうかを検査します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[isinf]]
 
{{!}} [[isinf]]
{{!}}  
+
{{!}} 与えられた値が無限値かどうかを検査します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[isnan]]
 
{{!}} [[isnan]]
{{!}}  
+
{{!}} 与えられた値が NaN 値かどうかを検査します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[isnormal]]
 
{{!}} [[isnormal]]
{{!}}  
+
{{!}} 与えられた値が正規値(0, 非正規化数, 無限大, NaN のいずれでもない)かどうかを検査します。
 
{{!-}}
 
{{!-}}
 
{{!}} [[isordered]]
 
{{!}} [[isordered]]
{{!}}  
+
{{!}} [[isequal]](''x'', ''x'') &amp;&amp; [[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 より翻訳