ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

uint64

64 ビット符号なし整数への変換

構文

intArray = uint64(array)

説明

intArray = uint64(array) は、配列の要素をクラス uint64 の符号なし 64 ビット (8 バイト) 整数に変換します。

入力引数

array

single または double などの数値クラスの配列。array が既にクラス uint64 の場合、関数 uint64 を指定しても効果はありません。

出力引数

intArray

クラス uint64 の配列。値の範囲は、0 ~ 264 – 1 です。

関数 uint64 は、範囲の外側にある array 内の文字を最も近い端点にマッピングします。たとえば、

uint64(2^64)   % 2^64 = 18446744073709551616

は、以下を返します。

ans =
    18446744073709551615

リテラル値を uint64 に変換します。

x = uint64(9007199254740993);

代替方法

整数配列を事前割り当てする場合、(zerosones、または eye など) クラス名入力をサポートする関数を呼び出すクラスを指定します。たとえば、

I = uint64(zeros(100));     % Creates an intermediate array

は、以下ほど効率的ではありません

I = zeros(100, 'uint64');   % Preferred 

詳細

すべて展開する

ヒント

倍精度浮動小数点数の仮数には、52 ビットしかありません。そのため、double 値は、253 より大きい整数をすべて正確に表すことができません。振幅が 253 より大きい値で算術演算を実行する前に、値を 64 ビットの整数に変換してください。たとえば、

x = uint64(2^53+1);    % Floating-point arithmetic, loses precision

は、64 ビット整数の数値演算ほど正確ではありません。

x = uint64(2^53) + 1;  % Preferred

参考

| | | | | | | | | |

チュートリアル

この情報は役に立ちましたか?