MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

SIMD.%type%.and()

この翻訳は不完全です。英語から この記事を翻訳 してください。

This is an experimental technology, part of the Harmony (ECMAScript 7) proposal.
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future version of browsers as the spec changes.

静的なSIMD.%type%.and() メソッドはレーン値の論理的ANDをもつ新しいインスタンスを返します。(a & b).

構文

SIMD.float32x4.and(a, b)
SIMD.int8x16.and(a, b)
SIMD.int16x8.and(a, b)
SIMD.int32x4.and(a, b)

引数

a
SIMD型のインスタンス
b
SIMD型の別のインスタンス.

戻り値

レーン値の論理的ANDをもつ新しい対応するSIMDデータ型(a & b)。

説明

abの両方が1なら、ビット単位のAND演算のみ1になります。AND演算に対する真理値表は下記の通りになります。:

a b a & b
0 0 0
0 1 0
1 0 0
1 1 1

例えば、5 & 1ビット単位のAND演算の結果は、10進数で1である0001になります。

5  0101
1  0001
   ----
1  0001

2つのint32x4のビット単位のAND演算

var a = SIMD.int32x4(1, 2, 4, 8);
var b = SIMD.int32x4(5, 5, 5, 5);
SIMD.int32x4.and(a, b);
// int32x4[1, 0, 4, 0]

2つのfloat32x4のビット単位のAND演算

2つのfloat32x4のAND演算に対して、最初にSIMD.int32x4.fromFloat32x4Bits()を使用してint32x4型にビット単位の変換が行われます。それから、int32x4型でビット単位のAND演算が実施され、最後に、SIMD.float32x4.fromInt32x4Bits()を使用してfloat32x4が返されます。

var a = SIMD.float32x4(1.5, 2.0, 4.0, 8.0);
var b = SIMD.float32x4(5.0, 5.0, 5.0, 5.0);
SIMD.float32x4.and(a, b);
// float32x4[1.1754943508222875e-38, 2, 4, 2]

仕様

SIMDはまだ公式規格文書やドラフトでサポートされていません。typed arrays に基づいた標準化作業や互換性実装のために、ecmascript_simd GitHub リポジトリを確かめて下さい。

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート 未サポート Nightly build 未サポート 未サポート 未サポート
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート 未サポート 未サポート Nightly build 未サポート 未サポート 未サポート

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: shide55
 最終更新者: shide55,