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ördür.

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. Örneklerin Vector<T> sayısı sabittir, ancak üst sınırı CPU yazmaç bağımlıdır. Büyük algoritmaları vektörleştirmek için yapı taşı olarak kullanılması amaçlanmıştır ve bu nedenle doğrudan rastgele bir uzunluk vektör veya tensor olarak kullanılamaz.

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

Bu makaledeki ilkel sayısal veri türü terimi, CPU tarafından doğrudan desteklenen ve bu veri türlerini işleyebilen yönergeleri olan 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 bir vektör oluşturur.

Vector<T>(T[])

Belirtilen diziden bir vektör oluşturur.

Vector<T>(T[], Int32)

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

Özellikler

AllBitsSet

Tüm bitlerin 1 olarak ayarlandığı yeni Vector<T> bir değer 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ördür.

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öru verilen Span<T>öğesine kopyalar.

CopyTo(Span<T>)

Vektöru verilen yayılma aralığına 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 bir 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 kopyalamaya Span<T>çalışır.

İşleçler

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

İki vektörleri bir araya ekler.

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

İki vektördeki öğelerin her birinde 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 birinde 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 hesaplamak için vektörleri skaler olarak böler.

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

İlk vektöru 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 birinde 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ünün bitlerini türünde Bytebir vektör olarak yeniden yorumlar.

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

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

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

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

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

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

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

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

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

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ünün bitlerini türünde SBytebir vektör olarak yeniden yorumlar.

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

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

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

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

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

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

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

Belirtilen vektörünün 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 sola kaydırıyor.

Multiply(T, Vector<T>)

Bir vektöri belirtilen skaler değerle çarpar.

Multiply(Vector<T>, T)

Bir vektöri belirtilen skaler değerle ç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>)

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ırarak (imzalar).

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

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

UnaryNegation(Vector<T>)

Belirli bir vektöri olumsuzlar.

UnaryPlus(Vector<T>)

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

UnsignedRightShift(Vector<T>, Int32)

Bir vektördeki her öğeyi belirtilen miktarda sağa kaydırarak (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*)

Verilen 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)

Verilen hedefte bir vektör depolar.

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

Verilen hedefte bir vektör depolar.

ToScalar<T>(Vector<T>)

Verilen vektöru, 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