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. Vector<T> örneklerin sayısı sabittir, ancak üst sınırı CPU kaydına 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 tensor olarak doğrudan kullanılamaz.

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

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

Vector<T>(Span<T>)

Verilen Span<T>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 bir Vector<T> alır.

Count

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

Indices

Öğeleri dizinine ayarlanmış yeni bir Vector<T> alır.

IsSupported

T desteklenip desteklenmediğini gösteren 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>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ğer 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ğin karma kodunu 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>)

Vektöri verilen bayt aralığına kopyalamaya çalışır.

TryCopyTo(Span<T>)

Verilen Span<T>vektör kopyalamaya çalışır.

İşleçler

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

birbirine iki vektör ekler.

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

İki vektördeki öğelerin her birinde bit düzeyinde And işlemi 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 işlemi 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ö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 birinde bit düzeyinde XOr işlemi gerçekleştirerek yeni bir vektör döndürür.

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

Belirtilen vektör bitlerini Bytetüründe bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini Doubletüründe bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini Int16türünde bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini Int32türünde bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini Int64türünde bir 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 bitlerini SBytetüründe bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini Singletüründe bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini UInt16türünde bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini UInt32türünde bir vektör olarak yeniden yorumlar.

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

Belirtilen vektör bitlerini UInt64türünde bir 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>)

Vektörle belirtilen skaler değeri çarpar.

Multiply(Vector<T>, T)

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

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> yeni bir Vector<T>olarak yeniden yorumlar.

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

Belirtilen dizindeki öğesini 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 bir skalere 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 bir Vector<T> oluşturur.

AsVector128<T>(Vector<T>)

bir Vector<T> yeni bir Vector128<T>olarak yeniden yorumlar.

AsVector256<T>(Vector<T>)

bir Vector<T> yeni bir Vector256<T>olarak yeniden yorumlar.

AsVector512<T>(Vector<T>)

bir Vector<T> yeni bir Vector512<T>olarak yeniden yorumlar.

Şunlara uygulanır