Vector<T> Yapı

Tanım

Paralel algoritmaların alt düzey iyileştirmesi için uygun olan belirtilen sayısal türde tek bir vektör temsil eder.

generic <typename T>
 where T : value classpublic value class Vector : IEquatable<System::Numerics::Vector<T>>, IFormattable
generic <typename T>
public value class Vector : IEquatable<System::Numerics::Vector<T>>, IFormattable
public struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
public readonly struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
public readonly struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable
type Vector<'T (requires 'T : struct)> = struct
    interface IFormattable
type Vector<'T> = struct
    interface IFormattable
Public Structure Vector(Of T)
Implements IEquatable(Of Vector(Of T)), IFormattable

Tür Parametreleri

T

Vektördeki öğelerin türü. T herhangi bir ilkel sayısal tür olabilir.

Devralma
Vector<T>
Uygulamalar

Açıklamalar

Vector<T> , belirtilen sayısal türde tek bir vektörü temsil eden sabit bir yapıdır. Örnek sayısı Vector<T> sabittir, ancak üst sınırı CPU yazmaç bağımlıdır. Büyük algoritmaları vektörleştirmek için bir yapı taşı olarak kullanılmak üzere tasarlanmıştır ve bu nedenle rastgele uzunluk vektör veya tensör olarak doğrudan kullanılamaz.

Yapı, Vector<T> donanım hızlandırma desteği sağlar.

Bu makaledeki ilkel sayısal veri türü terimi, DOĞRUDAN CPU tarafından desteklenen ve bu veri türlerini işleyebilen yönergelere sahip sayısal veri türlerini ifade eder.

Oluşturucular

Vector<T>(ReadOnlySpan<Byte>)

Verilen salt okunur bayt aralığından bir vektör oluşturur.

Vector<T>(ReadOnlySpan<T>)

Verilen ReadOnlySpan<T>'den bir vektör oluşturur.

Vector<T>(Span<T>)

Verilen Span<T>'den bir vektör oluşturur.

Vector<T>(T)

Bileşenleri belirtilen türde olan bir vektör oluşturur.

Vector<T>(T[])

Belirtilen diziden bir vektör oluşturur.

Vector<T>(T[], Int32)

Belirtilen dizin konumundan başlayarak belirtilen diziden bir vektör oluşturur.

Özellikler

AllBitsSet

Tüm bitlerin 1 olarak ayarlandığı yeni Vector<T> bir alır.

Count

Vektörde depolanan öğelerin sayısını döndürür.

Indices

Paralel algoritmaların alt düzey iyileştirmesi için uygun olan belirtilen sayısal türde tek bir vektör temsil eder.

IsSupported

Desteklenip desteklenmediğini T belirten bir değer alır.

Item[Int32]

Belirtilen dizindeki öğesini alır.

One

Tümünü içeren bir vektör döndürür.

Zero

Tüm sıfırları içeren bir vektör döndürür.

Yöntemler

CopyTo(Span<Byte>)

Vektör değerini verilen Span<T>öğesine kopyalar.

CopyTo(Span<T>)

Vektöri verilen yayılmaya kopyalar. .

CopyTo(T[])

Vektör örneğini belirtilen hedef diziye kopyalar.

CopyTo(T[], Int32)

Vektör örneğini belirtilen dizin konumundan başlayarak belirtilen hedef diziye kopyalar.

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

Equals(Vector<T>)

Bu örneğin belirtilen vektöre eşit olup olmadığını gösteren bir değer döndürür.

GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

ToString()

Varsayılan biçimlendirmeyi kullanarak bu vektörünün dize gösterimini döndürür.

ToString(String)

Tek tek öğeleri biçimlendirmek için belirtilen biçim dizesini kullanarak bu vektörünün dize gösterimini döndürür.

ToString(String, IFormatProvider)

Tek tek öğeleri biçimlendirmek için belirtilen biçim dizesini ve kültüre özgü biçimlendirmeyi tanımlamak için belirtilen biçim sağlayıcısını kullanarak bu vektörünün dize gösterimini döndürür.

TryCopyTo(Span<Byte>)

Verilen bayt aralığına vektör kopyalamaya çalışır.

TryCopyTo(Span<T>)

Verilen öğesine vektör kopyalamayı Span<T>dener.

İşleçler

Addition(Vector<T>, Vector<T>)

İki vektörleri bir araya ekler.

BitwiseAnd(Vector<T>, Vector<T>)

İki vektördeki öğelerin her biri üzerinde bit düzeyinde And bir işlem gerçekleştirerek yeni bir vektör döndürür.

BitwiseOr(Vector<T>, Vector<T>)

İki vektördeki öğelerin her biri üzerinde bit düzeyinde Or bir işlem gerçekleştirerek yeni bir vektör döndürür.

Division(Vector<T>, T)

Öğe başına bölüm hesaplaması için vektörleri skaler olarak böler.

Division(Vector<T>, Vector<T>)

İlk vektöri ikinciye böler.

Equality(Vector<T>, Vector<T>)

Belirtilen iki vektördeki her öğe çiftinin eşit olup olmadığını gösteren bir değer döndürür.

ExclusiveOr(Vector<T>, Vector<T>)

İki vektördeki öğelerin her biri üzerinde bit düzeyinde XOr bir işlem gerçekleştirerek yeni bir vektör döndürür.

Explicit(Vector<T> to Vector<Byte>)

Belirtilen vektör bitlerini türünde Bytebir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<Double>)

Belirtilen vektör bitlerini türünde Doublebir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<Int16>)

Belirtilen vektör bitlerini türünde Int16bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<Int32>)

Belirtilen vektör bitlerini türünde Int32bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<Int64>)

Belirtilen vektör bitlerini türünde Int64bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<IntPtr>)

Bir kaynak vektörünün bitlerini yerel boyutlu tamsayılardan oluşan bir vektöre yeniden yorumlar.

Explicit(Vector<T> to Vector<SByte>)

Belirtilen vektör bitlerini türünde SBytebir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<Single>)

Belirtilen vektör bitlerini türünde Singlebir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<UInt16>)

Belirtilen vektör bitlerini türünde UInt16bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<UInt32>)

Belirtilen vektör bitlerini türünde UInt32bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<UInt64>)

Belirtilen vektör bitlerini türünde UInt64bir vektör olarak yeniden yorumlar.

Explicit(Vector<T> to Vector<UIntPtr>)

Kaynak vektörünün bitlerini yerel boyutlu, işaretsiz tamsayılardan oluşan bir vektöre yeniden yorumlar.

Inequality(Vector<T>, Vector<T>)

Belirtilen vektörlerdeki tek bir öğe çiftinin eşit olup olmadığını gösteren bir değer döndürür.

LeftShift(Vector<T>, Int32)

Bir vektördeki her öğeyi belirtilen miktarda bırakır.

Multiply(T, Vector<T>)

Bir vektörle belirtilen skaler değeri çarpar.

Multiply(Vector<T>, T)

Bir vektörle belirtilen skaler değeri çarpar.

Multiply(Vector<T>, Vector<T>)

Değerleri belirtilen iki vektördeki her öğe çiftinin ürünü olan yeni bir vektör döndürür.

OnesComplement(Vector<T>)

Öğeleri belirtilen vektör öğelerinin tamamlayıcısı alınarak elde edilen yeni bir vektör döndürür.

RightShift(Vector<T>, Int32)

Bir vektördeki her öğeyi belirtilen miktarda sağa kaydırıyor (imzalı).

Subtraction(Vector<T>, Vector<T>)

İkinci vektöri birinciden çıkarır.

UnaryNegation(Vector<T>)

Belirli bir vektöre olumsuzluk verir.

UnaryPlus(Vector<T>)

Belirli bir vektöri değişmeden döndürür.

UnsignedRightShift(Vector<T>, Int32)

Bir vektördeki her öğeyi belirtilen miktarda sağa kaydırıyor (işaretsiz).

Uzantı Metotları

As<TFrom,TTo>(Vector<TFrom>)

bir Vector<T> öğesini yeni Vector<T>olarak yeniden yorumlar.

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

Belirtilen dizindeki öğeyi alır.

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

Belirtilen hedefte bir vektör depolar.

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

Belirtilen hizalanmış hedefte bir vektör depolar.

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

Belirtilen hizalanmış hedefte bir vektör depolar.

StoreUnsafe<T>(Vector<T>, T)

Belirtilen hedefte bir vektör depolar.

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

Belirtilen hedefte bir vektör depolar.

ToScalar<T>(Vector<T>)

Verilen vektöri, ilk öğenin değerini içeren skaler bir vektöre dönüştürür.

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

Belirtilen dizindeki öğesi belirtilen değere, kalan öğeler ise belirtilen vektördekiyle aynı değere ayarlanmış şekilde yeni Vector<T> bir oluşturur.

AsVector128<T>(Vector<T>)

bir Vector<T> öğesini yeni Vector128<T>olarak yeniden yorumlar.

AsVector256<T>(Vector<T>)

bir Vector<T> öğesini yeni Vector256<T>olarak yeniden yorumlar.

AsVector512<T>(Vector<T>)

bir Vector<T> öğesini yeni Vector512<T>olarak yeniden yorumlar.

Şunlara uygulanır