Table of Contents

Class BitMathCore

Namespace
Zyl.VectorTraits.Numerics
Assembly
VectorTraits.dll

Provides constants and static methods for binary operations, and other common mathematical functions (为二进制运算和其他通用数学函数提供常数和静态方法).

public abstract class BitMathCore
Inheritance
BitMathCore
Derived
Inherited Members

Properties

Is64Bit

Is 64bit system (是不是64位系统).

Methods

BitSelect(byte, byte, byte)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(double, double, double)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(Half, Half, Half)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(Int128, Int128, Int128)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(short, Half, Half)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(short, short, short)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(int, int, int)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(int, float, float)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(long, double, double)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(long, long, long)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(nint, nint, nint)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(sbyte, sbyte, sbyte)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(float, float, float)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(UInt128, UInt128, UInt128)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(ushort, ushort, ushort)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(uint, uint, uint)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(ulong, ulong, ulong)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(nuint, nuint, nuint)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(ExInt128, ExInt128, ExInt128)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

BitSelect(ExUInt128, ExUInt128, ExUInt128)

Conditionally mask selects a value from two variables on a bitwise basis (按条件掩码从两个变量中按位选择值).

ClampToBitMax(Int128, Int128)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(int, int)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(long, long)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(UInt128, UInt128)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(uint, uint)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(ulong, ulong)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(ExInt128, ExInt128)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToBitMax(ExUInt128, ExUInt128)

Returns value clamped to the inclusive range of 0 and amax (返回限制在 0 和 amax 范围内的 value). amax must be a Pow(2,n)-1.

ClampToByte(Int128)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(int)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(long)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(UInt128)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(uint)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(ulong)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(ExInt128)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ClampToByte(ExUInt128)

Returns value clamped to the inclusive range of 0 and byte.MaxValue (返回限制在 0 和 byte.MaxValue 范围内的 value).

ConditionalSelect(bool, byte, byte)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, double, double)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, Half, Half)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, Int128, Int128)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, short, short)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, int, int)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, long, long)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, nint, nint)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, sbyte, sbyte)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, float, float)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, UInt128, UInt128)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, ushort, ushort)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, uint, uint)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, ulong, ulong)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, nuint, nuint)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, ExInt128, ExInt128)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

ConditionalSelect(bool, ExUInt128, ExUInt128)

Conditionally selects a value from two variables on a bitwise basis (按条件从两个变量中按位选择值).

GetByteBy2XBitR(byte, byte)

Get the byte made by the 21-bit value - reversed (获取由21位值构成的字节 - 逆序). Generally used to make shuffle control codes, like _MM_SHUFFLE2(byte, byte) (一般用于制作 shuffle 控制码, 类似 _MM_SHUFFLE2(byte, byte)).

GetByteBy4XBitR(byte, byte, byte, byte)

Get the byte made by the 41-bit value - reversed (获取由41位值构成的字节 - 逆序).

GetByteBy8XBitR(byte, byte, byte, byte, byte, byte, byte, byte)

Get the byte made by the 81-bit value - reversed (获取由81位值构成的字节 - 逆序).

GetByteByBit2(byte, byte, byte, byte)

Get the byte made by the 2-bit value (获取由2位值构成的字节). Generally used to make shuffle control codes, like _MM_SHUFFLE(byte, byte, byte, byte) (一般用于制作 shuffle 控制码, 类似 _MM_SHUFFLE(byte, byte, byte, byte)).

GetByteByBit2R(byte, byte, byte, byte)

Get the byte made by the 2-bit value - reversed (获取由2位值构成的字节 - 逆序). Generally used to make shuffle control codes, like _MM_SHUFFLE(byte, byte, byte, byte) (一般用于制作 shuffle 控制码, 类似 _MM_SHUFFLE(byte, byte, byte, byte)).

GetByteByBit4(byte, byte)

Get the byte made by the 4-bit value (获取由4位值构成的字节). Generally used to make shuffle control codes, like _MM_SHUFFLE(byte, byte, byte, byte) (一般用于制作 shuffle 控制码, 类似 _MM_SHUFFLE(byte, byte, byte, byte)).

GetByteByBit4R(byte, byte)

Get the byte made by the 4-bit value - reversed (获取由4位值构成的字节 - 逆序). Generally used to make shuffle control codes, like _MM_SHUFFLE(byte, byte, byte, byte) (一般用于制作 shuffle 控制码, 类似 _MM_SHUFFLE(byte, byte, byte, byte)).

GetMostSignificantBit(byte)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(double)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(Int128)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(short)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(int)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(long)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(sbyte)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(float)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(UInt128)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(ushort)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(uint)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(ulong)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(ExInt128)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

GetMostSignificantBit(ExUInt128)

Get the most significant bit (取得最高有效位). Mnemonic: rt := src >>> (sizeof(T)*8-1).

MapFlags(int, int, int)

Mapping old flags to new flags (将旧标志映射为新标志).

MapFlags(int, int, int, int, int)

Mapping 2 groups of old flags to new flags (将2组旧标志映射为新标志).

ToInt32(bool)

Convert bool to Int32 (将 bool 转为 Int32).

ToInt32Mask(bool)

Convert bool to Int32 mask (将 bool 转为 Int32 掩码).

_MM_SHUFFLE(byte, byte, byte, byte)

Make the shuffle control code for selecting four 2-bit values (制作shuffle控制码, 用于选择4个2位值).

_MM_SHUFFLE2(byte, byte)

Make the shuffle control code for selecting two 1-bit values (制作shuffle控制码, 用于选择2个1位值).