Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.
La méthode statique SIMD.%type%.not()
renvoie un nouveau vecteur dont les composantes sont les opposés logiques binaires des composantes du vecteur passé en argument (autrement dit, pour chaque voie, on applique un NON logique à la valeur exprimée en binaire) (~a
). Cette opération n'existe que pour les types SIMD entiers et booléens.
Syntaxe
SIMD.Int8x16.not(a) SIMD.Int16x8.not(a) SIMD.Int32x4.not(a) SIMD.Uint8x16.not(a, b) SIMD.Uint16x8.not(a, b) SIMD.Uint32x4.not(a, b) SIMD.Bool8x16.not(a) SIMD.Bool16x8.not(a) SIMD.Bool32x4.not(a) SIMD.Bool64x2.not(a)
Paramètres
- a
- Une instance d'un type SIMD.
Valeur de retour
Un nouveau vecteur SIMD dont les voies contiennent les résultats d'un NON logique appliquées aux valeurs binaires des voies de a
(~a
).
Description
L'opération NON logique binaire fournit les valeurs inversées (en complément à un). La table de vérité du NON logique est :
a |
~a |
---|---|
0 | 1 |
1 | 0 |
Ainsi, un NON logique binaire appliqué à 5 renverra 1010
en binaire, ce qui correspond à 10 en décimal.
5 0101 ---- 10 1010
Exemple
NON binaire appliqué à un Int32x4
var a = SIMD.Int32x4(1, 2, 4, 8); SIMD.Int32x4.not(a); // Int32x4[-2, -3, -5, -9]
Spécifications
Spécification | Statut | Commentaires |
---|---|---|
SIMD La définition de 'SIMDConstructor.not' dans cette spécification. |
Projet | Définition initiale. |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | Pas de support | Nightly build | Pas de support | Pas de support | Pas de support |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | Pas de support | Pas de support | Nightly build | Pas de support | Pas de support | Pas de support |