Поделиться через


Vector256<T> Структура

Определение

Представляет 256-разрядный вектор указанного числового типа, который подходит для низкоуровневой оптимизации параллельных алгоритмов.

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

Параметры типа

T

Тип элементов в векторе.

Наследование
Vector256<T>
Реализации

Свойства

AllBitsSet

Возвращает новый Vector256<T> со всеми битами, для которых задано значение 1.

Count

Возвращает количество объектов T, содержащихся в Vector256<T>.

Indices

Представляет 256-разрядный вектор указанного числового типа, который подходит для низкоуровневой оптимизации параллельных алгоритмов.

IsSupported

Возвращает значение, указывающее, поддерживается ли T .

Item[Int32]

Получает элемент с указанным индексом.

One

Возвращает новый Vector256<T> объект со всеми элементами, инициализированными в один.

Zero

Возвращает новый объект Vector256<T>, все элементы которого инициализированы нулевыми значениями.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему экземпляру.

Equals(Vector256<T>)

Определяет, равен ли указанный объект Vector256<T> текущему экземпляру.

GetHashCode()

Получает хэш-код для экземпляра.

ToString()

Преобразует текущий экземпляр в эквивалентное ему строковое представление.

Операторы

Addition(Vector256<T>, Vector256<T>)

Добавляет два вектора для вычисления их суммы.

BitwiseAnd(Vector256<T>, Vector256<T>)

Вычисляет побитовые и двух векторов.

BitwiseOr(Vector256<T>, Vector256<T>)

Вычисляет побитовое значение или двух векторов.

Division(Vector256<T>, T)

Делит вектор на скаляр для вычисления частного элемента.

Division(Vector256<T>, Vector256<T>)

Делит два вектора для вычисления их частного.

Equality(Vector256<T>, Vector256<T>)

Сравнивает два вектора, чтобы определить, равны ли все элементы.

ExclusiveOr(Vector256<T>, Vector256<T>)

Вычисляет исключающее значение или двух векторов.

Inequality(Vector256<T>, Vector256<T>)

Сравнивает два вектора, чтобы определить, не равны ли какие-либо элементы.

LeftShift(Vector256<T>, Int32)

Сдвигает каждый элемент вектора влево на указанную величину.

Multiply(T, Vector256<T>)

Умножает вектор на скаляр для вычисления их продукта.

Multiply(Vector256<T>, T)

Умножает вектор на скаляр для вычисления их продукта.

Multiply(Vector256<T>, Vector256<T>)

Умножает два вектора для вычисления их элементного продукта.

OnesComplement(Vector256<T>)

Вычисляет дополнение к единицам вектора.

RightShift(Vector256<T>, Int32)

Сдвигает (со знаком) каждый элемент вектора вправо на указанную величину.

Subtraction(Vector256<T>, Vector256<T>)

Вычитает два вектора, чтобы вычислить их разницу.

UnaryNegation(Vector256<T>)

Вычисляет унарное отрицание вектора.

UnaryPlus(Vector256<T>)

Возвращает заданный вектор без изменений.

UnsignedRightShift(Vector256<T>, Int32)

Сдвигает (без знака) каждый элемент вектора вправо на указанную величину.

Методы расширения

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

Переинтерпретирует Vector256<T> типа TFrom как новый Vector256<T> типа TTo.

AsByte<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Byte.

AsDouble<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Double.

AsInt16<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Int16.

AsInt32<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Int32.

AsInt64<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Int64.

AsNInt<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256<T>.

AsNUInt<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256<T>.

AsSByte<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа SByte.

AsSingle<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа Single.

AsUInt16<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа UInt16.

AsUInt32<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа UInt32.

AsUInt64<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector256 типа UInt64.

AsVector<T>(Vector256<T>)

Переинтерпретирует Vector256<T> как новый Vector<T>.

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

Копирует в Vector256<T> заданный массив.

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

Копирует в Vector256<T> заданный массив, начиная с указанного индекса.

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

Копирует в Vector256<T> заданный диапазон.

ExtractMostSignificantBits<T>(Vector256<T>)

Извлекает наиболее значимый бит из каждого элемента в векторе.

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

Получает элемент с указанным индексом.

GetLower<T>(Vector256<T>)

Возвращает значение младших 128 бит в качестве нового Vector128<T>.

GetUpper<T>(Vector256<T>)

Возвращает значение старших 128 бит в качестве нового Vector128<T>.

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

Сохраняет вектор в заданном месте назначения.

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

Сохраняет вектор в заданном выровненном месте назначения.

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

Сохраняет вектор в заданном выровненном месте назначения.

StoreUnsafe<T>(Vector256<T>, T)

Сохраняет вектор в заданном месте назначения.

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

Сохраняет вектор в заданном месте назначения.

ToScalar<T>(Vector256<T>)

Преобразует заданный вектор в скаляр, содержащий значение первого элемента.

ToVector512<T>(Vector256<T>)

Преобразует заданный вектор в новый Vector512<T> с нижними 256 битами, заданными значением заданного вектора, а верхние 256 биты инициализированы нулевым значением.

ToVector512Unsafe<T>(Vector256<T>)

Преобразует заданный вектор в новый Vector512<T> с нижними 256 битами, заданными для значения заданного вектора, а верхние 256 биты слева неинициализированы.

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

Пытается скопировать в Vector<T> заданный диапазон.

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

Создает новый Vector256<T> с элементом по указанному индексу, для которого задано указанное значение, а остальные элементы получают то же значение, что и в данном векторе.

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

Создает новый Vector256<T> с младшими 128 битами, для которых задано указанное значение, и старшими 128 битами, для которых задано то же значение, что и в указанном векторе.

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

Создает новый Vector256<T> со старшими 128 битами, для которых задано указанное значение, и младшими 128 битами, для которых задано то же значение, что и в указанном векторе.

Применяется к