本章では、各クラスとそれに関連した処理について説明するときに特殊な用語と構文を用いています。以下で、その説明をします。
クラス名は、データ型、符号の有無、ビット・サイズ、要素数を表現したものです。一般的な形式で表すと次のようになります。
<type><signedness><bits>vec<elements>
{ F | I } { s | u } { 64 | 32 | 16 | 8 } vec { 8 | 4 | 2 | 1 }
各アイテムの意味は次のとおりです。
type | 浮動小数点 (F) または整数 (I) を示します。 |
signedness | 符号付き (s) または符号なし (u) を示します。Ivec クラスの場合は、このフィールドが空のままだと中間クラスを表します。符号なしの Fvec クラスはないため、Fvec クラスの場合、このフィールドは空です。 |
bits | 要素あたりのビット数です。 |
elements | 要素の個数です。 |
本書では、各クラスと演算についてその機能と特性を定義するときに次の用語を用いています。
クラス名 | 説明 |
---|---|
I[s|u][N]vec[N] | I128vec1 以外および I64vec1 以外の任意の値 |
I64vec1 | __m64 データ型 |
I[s|u]64vec2 | 2 つの 64 ビット値 (符号付き、または符号なし) |
I[s|u]32vec4 | 4 つの 32 ビット値 (符号付き、または符号なし) |
I[s|u]8vec16 | 8 つの 16 ビット値 (符号付き、または符号なし) |
I[s|u]16vec8 | 16 の 8 ビット値 (符号付き、または符号なし) |
I[s|u]32vec2 | 2 つの 32 ビット値 (符号付き、または符号なし) |
I[s|u]16vec4 | 4 つの 16 ビット値 (符号付き、または符号なし) |
I[s|u]8vec8 | 8 つの 8 ビット値 (符号付き、または符号なし) |