Freigeben über


Vector128<T> Struktur

Definition

Stellt einen 128-Bit-Vektor eines angegebenen numerischen Typs dar, der für die Optimierung paralleler Algorithmen auf niedriger Ebene geeignet ist.

generic <typename T>
 where T : value classpublic value class Vector128 : IEquatable<System::Runtime::Intrinsics::Vector128<T>>
generic <typename T>
public value class Vector128 : IEquatable<System::Runtime::Intrinsics::Vector128<T>>
public readonly struct Vector128<T> : IEquatable<System.Runtime.Intrinsics.Vector128<T>> where T : struct
public readonly struct Vector128<T> : IEquatable<System.Runtime.Intrinsics.Vector128<T>>
type Vector128<'T (requires 'T : struct)> = struct
type Vector128<'T> = struct
Public Structure Vector128(Of T)
Implements IEquatable(Of Vector128(Of T))

Typparameter

T

Der Typ der Elemente im Vektor.

Vererbung
Vector128<T>
Implementiert

Eigenschaften

AllBitsSet

Ruft eine neue Vector128<T> ab, wobei alle Bits auf 1 festgelegt sind.

Count

Ruft die Anzahl von T ab, die in Vector128<T> vorhanden sind.

Indices

Stellt einen 128-Bit-Vektor eines angegebenen numerischen Typs dar, der für die Optimierung paralleler Algorithmen auf niedriger Ebene geeignet ist.

IsSupported

Ruft einen Wert ab, der angibt, ob T unterstützt wird.

Item[Int32]

Ruft das Element am angegebenen Index ab.

One

Ruft eine neue Vector128<T> mit allen Elementen ab, die auf eins initialisiert sind.

Zero

Ruft erneut Vector128<T> auf, wobei alle Elemente mit 0 (null) initialisiert werden.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt und die aktuelle Instanz gleich sind.

Equals(Vector128<T>)

Bestimmt, ob das angegebene Vector128<T> und die aktuelle Instanz gleich sind.

GetHashCode()

Ruft den Hash für die Instanz ab.

ToString()

Konvertiert die aktuelle Instanz in eine entsprechende Zeichenfolgendarstellung.

Operatoren

Addition(Vector128<T>, Vector128<T>)

Fügt zwei Vektoren hinzu, um ihre Summe zu berechnen.

BitwiseAnd(Vector128<T>, Vector128<T>)

Berechnet das bitweise und von zwei Vektoren.

BitwiseOr(Vector128<T>, Vector128<T>)

Berechnet das bitweise oder von zwei Vektoren.

Division(Vector128<T>, T)

Dividiert einen Vektor durch einen Skalar, um den Elementquotienten zu berechnen.

Division(Vector128<T>, Vector128<T>)

Dividiert zwei Vektoren, um ihren Quotienten zu berechnen.

Equality(Vector128<T>, Vector128<T>)

Vergleicht zwei Vektoren, um zu bestimmen, ob alle Elemente gleich sind.

ExclusiveOr(Vector128<T>, Vector128<T>)

Berechnet den exklusiven oder von zwei Vektoren.

Inequality(Vector128<T>, Vector128<T>)

Vergleicht zwei Vektoren, um zu bestimmen, ob Elemente ungleich sind.

LeftShift(Vector128<T>, Int32)

Verschiebt jedes Element eines Vektors um den angegebenen Betrag nach links.

Multiply(T, Vector128<T>)

Multipliziert einen Vektor mit einem Skalar, um sein Produkt zu berechnen.

Multiply(Vector128<T>, T)

Multipliziert einen Vektor mit einem Skalar, um sein Produkt zu berechnen.

Multiply(Vector128<T>, Vector128<T>)

Multipliziert zwei Vektoren, um ihr elementweises Produkt zu berechnen.

OnesComplement(Vector128<T>)

Berechnet das Eins-Komplement eines Vektors.

RightShift(Vector128<T>, Int32)

Verschiebt (signiert) jedes Element eines Vektors um den angegebenen Betrag nach rechts.

Subtraction(Vector128<T>, Vector128<T>)

Subtrahiert zwei Vektoren, um deren Differenz zu berechnen.

UnaryNegation(Vector128<T>)

Berechnet die unäre Negation eines Vektors.

UnaryPlus(Vector128<T>)

Gibt einen angegebenen Vektor unverändert zurück.

UnsignedRightShift(Vector128<T>, Int32)

Verschiebt (ohne Vorzeichen) jedes Element eines Vektors um den angegebenen Betrag nach rechts.

Erweiterungsmethoden

As<T,U>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur vom Typ TFrom als Vector128<T>-Struktur vom Typ TTo neu.

AsByte<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Byte neu.

AsDouble<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Double neu.

AsInt16<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Int16 neu.

AsInt32<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Int32 neu.

AsInt64<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Int64 neu.

AsNInt<T>(Vector128<T>)

Interpretiert einen Vector128<T> als neuen Vector128<T> neu.

AsNUInt<T>(Vector128<T>)

Interpretiert einen Vector128<T> als neuen Vector128<T> neu.

AsSByte<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ SByte neu.

AsSingle<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ Single neu.

AsUInt16<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ UInt16 neu.

AsUInt32<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ UInt32 neu.

AsUInt64<T>(Vector128<T>)

Interpretiert eine Vector128<T>-Struktur als Vector128-Klasse vom Typ UInt64 neu.

AsVector<T>(Vector128<T>)

Interpretiert einen Vector128<T> als neuen Vector<T> neu.

CopyTo<T>(Vector128<T>, T[])

Kopiert ein Vector128<T> in ein angegebenes Array.

CopyTo<T>(Vector128<T>, T[], Int32)

Kopiert eine Vector128<T> ab dem angegebenen Index in ein angegebenes Array.

CopyTo<T>(Vector128<T>, Span<T>)

Kopiert eine Vector128<T> in eine bestimmte Spanne.

ExtractMostSignificantBits<T>(Vector128<T>)

Extrahiert das bedeutendste Bit aus jedem Element in einem Vektor.

GetElement<T>(Vector128<T>, Int32)

Ruft das Element am angegebenen Index ab.

GetLower<T>(Vector128<T>)

Ruft den Wert der unteren 64 Bits als neue Vector64<T>-Struktur ab.

GetUpper<T>(Vector128<T>)

Ruft den Wert der oberen 64 Bits als neue Vector64<T>-Struktur ab.

Store<T>(Vector128<T>, T*)

Speichert einen Vektor am angegebenen Ziel.

StoreAligned<T>(Vector128<T>, T*)

Speichert einen Vektor am angegebenen ausgerichteten Ziel.

StoreAlignedNonTemporal<T>(Vector128<T>, T*)

Speichert einen Vektor am angegebenen ausgerichteten Ziel.

StoreUnsafe<T>(Vector128<T>, T)

Speichert einen Vektor am angegebenen Ziel.

StoreUnsafe<T>(Vector128<T>, T, UIntPtr)

Speichert einen Vektor am angegebenen Ziel.

ToScalar<T>(Vector128<T>)

Konvertiert den angegebenen Vektor in einen Skalar, der den Wert des ersten Elements enthält.

ToVector256<T>(Vector128<T>)

Konvertiert den angegebenen Vektor in eine neue Vector256<T>-Struktur, wobei die unteren 128 Bits auf den Wert des angegebenen Vektors gesetzt und die oberen 128 Bits auf Null initialisiert wurden.

ToVector256Unsafe<T>(Vector128<T>)

Konvertiert den angegebenen Vektor in eine neue Vector256<T>-Struktur, wobei die unteren 128 Bits auf den Wert des angegebenen Vektors gesetzt wurden und die oberen 128 Bits deinitialisiert blieben.

TryCopyTo<T>(Vector128<T>, Span<T>)

Versucht, eine Vector<T> in eine bestimmte Spanne zu kopieren.

WithElement<T>(Vector128<T>, Int32, T)

Erstellt eine neue Vector128<T>-Struktur, wobei das Element beim angegebenen Index auf den angegebenen Wert und die übrigen Elemente auf den gleichen Wert wie im angegebenen Vektor gesetzt werden.

WithLower<T>(Vector128<T>, Vector64<T>)

Erstellt eine neue Vector128<T>-Struktur mit den unteren 64 Bits, die auf den angegebenen Wert gesetzt sind, und den oberen 64 Bits, die auf den gleichen Wert wie im angegebenen Vektor gesetzt sind.

WithUpper<T>(Vector128<T>, Vector64<T>)

Erstellt eine neue Vector128<T>-Struktur mit den oberen 64 Bits, die auf den angegebenen Wert festgelegt sind, und den unteren 64 Bits, die auf den gleichen Wert wie im angegebenen Vektor festgelegt sind.

Gilt für: