Dotnet-core-numerics
提供:Dev Guides
.NET Core-数値
- System.Numerics.BigIntegerは、上限または下限のない整数型です。
- System.Numerics.Complexは、複素数を表す型です。
- System.Numerics名前空間のSIMD(Single Instruction Multiple Data)対応ベクタータイプのセット。
積分型
NET Core supports both signed and unsigned integers of different ranges from one byte to eight bytes in length. All integers are value types..
次の表は、整数型とそのサイズを表しています。
| Type | Signed/Unsigned | Size (bytes) | Minimum Value | Maximum Value |
|---|---|---|---|---|
| Byte | Unsigned | 1 | 0 | 255 |
| Int16 | Signed | 2 | −32,768 | 32,767 |
| Int32 | Signed | 4 | −2,147,483,648 | 2,147,483,647 |
| Int64 | Signed | 8 | −9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |
| SByte | Signed | 1 | -128 | 127 |
| UInt16 | Unsigned | 2 | 0 | 65,535 |
| UInt32 | Unsigned | 4 | 0 | 4,294,967,295 |
| UInt64 | Unsigned | 8 | 0 | 18,446,744,073,709,551,615 |
各整数型は、算術演算子、比較演算子、等価演算子、明示的な変換演算子、および暗黙的な変換演算子の標準セットをサポートしています。
System.BitConverterクラスを使用して、整数値の個々のビットを操作することもできます。
浮動小数点型
| Type | Size (bytes) | Minimum Value | Maximum Value |
|---|---|---|---|
| Double | 8 | −1.79769313486232e308 | 1.79769313486232e308 |
| Single | 4 | −3.402823e38 | 3.402823e38 |
| Decimal | 16 | −79,228,162,514,264,337,593,5 43,950,335 | 79,228,162,514,264,337,593,543,9 50,335 |
- 各浮動小数点型は、算術演算子、比較演算子、等価演算子、明示的な変換演算子、および暗黙的な変換演算子の標準セットをサポートしています。
- BitConverterクラスを使用して、Double値とSingle値の個々のビットを操作することもできます。
- Decimal構造には、10進値の個々のビットを操作するための独自のメソッド、Decimal.GetBitsおよびDecimal.Decimal(Int32())と、いくつかの追加の数学演算を実行するための独自のメソッドセットがあります。
BigInteger
- System.Numerics.BigIntegerは不変の型であり、理論的には値に上限または下限がない任意の大きな整数を表します。
- BigInteger型のメソッドは、他の整数型のメソッドとほぼ平行です。
複雑な
- System.Numerics.Complex型は、複素数、つまり実数部と虚数部を持つ数字を表します
- 算術、比較、等式、明示的な変換、および暗黙的な変換演算子の標準セットに加えて、数学、代数、および三角法のメソッドをサポートしています。
SIMD
- Numerics名前空間には、.NET Core用のSIMD対応ベクタータイプのセットが含まれています。
- SIMDを使用すると、一部の操作をハードウェアレベルで並列化できるため、ベクターで計算を実行する数学、科学、およびグラフィックアプリのパフォーマンスが大幅に向上します。
- .NET CoreのSIMD対応ベクタータイプには、次のものが含まれます-
- System.Numerics.Vector2、System.Numerics.Vector3、およびSystem.Numerics.Vector4タイプは、Singleタイプの2、3、および4次元ベクトルです。
- 任意のプリミティブ数値型のベクトルを作成できるVector <T>構造。 プリミティブ数値型には、Decimalを除くSystem名前空間のすべての数値型が含まれます。
- 2つのマトリックスタイプ、System.Numerics.Matrix3×2。3×2マトリックスを表します。 System.Numerics.Matrix4×4は、4×4マトリックスを表します。
- System.Numerics.Planeタイプは3次元平面を表し、System.Numerics.Quaternionタイプは3次元の物理的回転のエンコードに使用されるベクトルを表します。