Vector<T> Struktur

Definisi

Mewakili vektor tunggal dari jenis numerik tertentu yang cocok untuk pengoptimalan algoritma paralel tingkat rendah.

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

Jenis parameter

T

Jenis elemen dalam vektor. T dapat berupa jenis numerik primitif apa pun.

Warisan
Vector<T>
Penerapan

Keterangan

Vector<T> adalah struktur yang tidak dapat diubah yang mewakili vektor tunggal dari jenis numerik tertentu. Jumlah Vector<T> instans diperbaiki, tetapi batas atasnya tergantung pada CPU-register. Ini dimaksudkan untuk digunakan sebagai blok penyusun untuk vektorisasi algoritma besar, dan karenanya tidak dapat digunakan langsung sebagai vektor atau tensor panjang arbitrer.

Struktur ini Vector<T> menyediakan dukungan untuk akselerasi perangkat keras.

Istilah jenis data numerik primitif dalam artikel ini mengacu pada jenis data numerik yang didukung langsung oleh CPU dan memiliki instruksi yang dapat memanipulasi jenis data tersebut.

Konstruktor

Vector<T>(ReadOnlySpan<Byte>)

Membangun vektor dari rentang byte baca-saja yang diberikan.

Vector<T>(ReadOnlySpan<T>)

Membangun vektor dari yang diberikan ReadOnlySpan<T>.

Vector<T>(Span<T>)

Membangun vektor dari yang diberikan Span<T>.

Vector<T>(T)

Membuat vektor yang komponennya berjenis tertentu.

Vector<T>(T[])

Membuat vektor dari array tertentu.

Vector<T>(T[], Int32)

Membuat vektor dari array tertentu mulai dari posisi indeks tertentu.

Properti

AllBitsSet

Mendapatkan baru Vector<T> dengan semua bit diatur ke 1.

Count

Mengembalikan jumlah elemen yang disimpan dalam vektor.

Indices

Mewakili vektor tunggal dari jenis numerik tertentu yang cocok untuk pengoptimalan algoritma paralel tingkat rendah.

IsSupported

Mendapatkan nilai yang menunjukkan apakah T didukung.

Item[Int32]

Mendapatkan elemen pada indeks tertentu.

One

Mengembalikan vektor yang berisi semua vektor.

Zero

Mengembalikan vektor yang berisi semua nol.

Metode

CopyTo(Span<Byte>)

Menyalin vektor ke yang diberikan Span<T>.

CopyTo(Span<T>)

Menyalin vektor ke rentang yang diberikan. .

CopyTo(T[])

Menyalin instans vektor ke array tujuan tertentu.

CopyTo(T[], Int32)

Menyalin instans vektor ke array tujuan tertentu mulai dari posisi indeks tertentu.

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

Equals(Vector<T>)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan vektor tertentu.

GetHashCode()

Mengembalikan kode hash untuk instans ini.

ToString()

Mengembalikan representasi string dari vektor ini menggunakan pemformatan default.

ToString(String)

Mengembalikan representasi string dari vektor ini menggunakan string format yang ditentukan untuk memformat elemen individual.

ToString(String, IFormatProvider)

Mengembalikan representasi string dari vektor ini menggunakan string format yang ditentukan untuk memformat elemen individual dan penyedia format yang ditentukan untuk menentukan pemformatan khusus budaya.

TryCopyTo(Span<Byte>)

Mencoba menyalin vektor ke rentang byte yang diberikan.

TryCopyTo(Span<T>)

Mencoba menyalin vektor ke yang diberikan Span<T>.

Operator

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

Menambahkan dua vektor bersama-sama.

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

Mengembalikan vektor baru dengan melakukan operasi bitwise And pada setiap elemen dalam dua vektor.

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

Mengembalikan vektor baru dengan melakukan operasi bitwise Or pada setiap elemen dalam dua vektor.

Division(Vector<T>, T)

Membagi vektor dengan skalar untuk menghitung per elemen quotient.

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

Membagi vektor pertama dengan yang kedua.

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

Mengembalikan nilai yang menunjukkan apakah setiap pasangan elemen dalam dua vektor yang ditentukan sama.

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

Mengembalikan vektor baru dengan melakukan operasi bitwise XOr pada setiap elemen dalam dua vektor.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Byte.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Double.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Int16.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Int32.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Int64.

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

Masukkan kembali bit vektor sumber ke dalam vektor bilangan bulat berukuran asli.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis SByte.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis Single.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis UInt16.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis UInt32.

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

Menginterpretrasi ulang bit vektor yang ditentukan ke dalam vektor jenis UInt64.

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

Menginterpretasikan kembali bit vektor sumber ke dalam vektor bilangan bulat berukuran asli dan tidak ditandatangani.

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

Mengembalikan nilai yang menunjukkan apakah ada sepasang elemen dalam vektor yang ditentukan sama.

LeftShift(Vector<T>, Int32)

Menggeser setiap elemen vektor ke kiri dengan jumlah yang ditentukan.

Multiply(T, Vector<T>)

Mengalikan vektor dengan nilai skalar tertentu.

Multiply(Vector<T>, T)

Mengalikan vektor dengan nilai skalar tertentu.

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

Mengembalikan vektor baru yang nilainya adalah produk dari setiap pasangan elemen dalam dua vektor yang ditentukan.

OnesComplement(Vector<T>)

Mengembalikan vektor baru yang elemennya diperoleh dengan mengambil pelengkap elemen vektor tertentu.

RightShift(Vector<T>, Int32)

Menggeser (ditandatangani) setiap elemen vektor tepat dengan jumlah yang ditentukan.

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

Mengurangi vektor kedua dari yang pertama.

UnaryNegation(Vector<T>)

Meniadakan vektor tertentu.

UnaryPlus(Vector<T>)

Mengembalikan vektor tertentu yang tidak berubah.

UnsignedRightShift(Vector<T>, Int32)

Menggeser (tidak ditandatangani) setiap elemen vektor ke kanan dengan jumlah yang ditentukan.

Metode Ekstensi

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

Menginterpretasi Vector<T> ulang sebagai baru Vector<T>.

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

Mendapatkan elemen pada indeks yang ditentukan.

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

Menyimpan vektor di tujuan tertentu.

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

Menyimpan vektor di tujuan yang diselaraskan yang diberikan.

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

Menyimpan vektor di tujuan yang diselaraskan yang diberikan.

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

Menyimpan vektor di tujuan tertentu.

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

Menyimpan vektor di tujuan tertentu.

ToScalar<T>(Vector<T>)

Mengonversi vektor yang diberikan menjadi skalar yang berisi nilai elemen pertama.

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

Membuat baru Vector<T> dengan elemen pada indeks yang ditentukan yang diatur ke nilai yang ditentukan dan elemen yang tersisa diatur ke nilai yang sama dengan yang ada di vektor yang diberikan.

AsVector128<T>(Vector<T>)

Menginterpretasi Vector<T> ulang sebagai baru Vector128<T>.

AsVector256<T>(Vector<T>)

Menginterpretasi Vector<T> ulang sebagai baru Vector256<T>.

AsVector512<T>(Vector<T>)

Menginterpretasi Vector<T> ulang sebagai baru Vector512<T>.

Berlaku untuk