問題タブ [128-bit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
14157 参照

integer - cudaの128ビット整数?

Linux Ubuntu 10.04にcuda SDKをインストールできました。私のグラフィック カードは NVIDIA geForce GT 425M で、重い計算問題に使用したいと考えています。私が疑問に思っているのは、unsigned 128 ビット int var を使用する方法はありますか? gcc を使用して CPU 上でプログラムを実行する場合、__uint128_t 型を使用していましたが、cuda で使用するとうまくいかないようです。cuda で 128 ビット整数を使用するためにできることはありますか?

0 投票する
2 に答える
4412 参照

c - Windowsでcを使用した128ビット整数?

Windows で 128 ビット整数をネイティブに使用できる C コンパイラはありますか? たとえば、Linux で gcc を __uint128_t で使用できます。(128 ビットが 32 ビットのコンピューターでも動作するなら素晴らしいことです! :D)

マッテオ

0 投票する
1 に答える
14968 参照

gcc - x86 および x86_64 で Gcc 4.6.0 libquadmath および __float128 を使用する方法

long double浮動小数点計算に型 (80 ビット)を使用する中規模の C99 プログラムがあります。新しい GCC 4.6 拡張機能で精度を向上させたい__float128。私が得たように、これはソフトウェアでエミュレートされた 128 ビット精度の演算です。

完全精度のソフトウェア エミュレーションを使用して、プログラムを従来の 80 ビットの long double から 128 ビットの quad float に変換するにはどうすればよいですか? 何を変更する必要がありますか? コンパイラフラグ、ソース?

私のプログラムでは、 で完全精度の値を読み取り、strtodそれらに対してさまざまな操作 (+-*/ sin、cos、exp など<math.h>) を実行printfし、それらを -ing します。

PS: float128 は Fortran (REAL*16) に対してのみ宣言されていますが、libquadmath は C で記述されており、float128 を使用しています。GCC が float128 の操作をランタイム ライブラリに変換するかどうかはわかりません。また、ソースで long double から __float128 に移行する方法もわかりません。

PPS: 「C」言語の gcc モードに関するドキュメントがあります: http://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html

「GNU C コンパイラは ... 128 ビット (TFmode) 浮動小数点型をサポートしています。追加の型のサポートには、算術演算子が含まれます:加算、減算、乗算、除算、単項算術演算子、関係演算子、等価演算子 ... __float128 型がサポートされていますi386、x86_64"

0 投票する
2 に答える
1105 参照

php - コードをプレーンテキストにデコードしたいだけ

関数 get_rnd_iv() および md5_encrypt() について詳しく知りたいのですが、これらの関数は 128 ビット エンコーディングを使用するためのものです。ここで、そのコードをプレーンテキストにデコードする方法を知りたいだけです...

ここに私のすべてのコード行があります..

0 投票する
2 に答える
3493 参照

floating-point - 128 ビットの「long-float」は便利ですか?

先日、最も一般的な Lisp には 128 ビットの "long-floats" があることに気付きました。その結果、最もポジティブな long float は次のようになります。

一方、最もポジティブな double float は1.7976931348623157 * 10^308で、これはすでにかなり大きいです。

より大きな数を必要としたことがある人がいるかどうかを知りたかったのですが1.7976931348623157 * 10^308、もしそうなら、どのような状態でしたか?

プログラミング言語でデフォルトで持っていると便利だと思いますか?

状況によっては、64 ビット double float の精度が十分でない場合がありますか? ユースケースを聞きたいです。

0 投票する
3 に答える
4321 参照

c - __uint128_t on mingw gcc

mingw gcc で ac プログラムをコンパイルしようとしています。このプログラムは__uint128_t整数を使用しています。同じ64ビットマシンで標準のubuntu gccでコンパイルしようとすると、完全に機能します。しかし、それを mingw の下で Windows 用にコンパイルしようとすると、__uint128_tキーワードさえ認識されません。これは何を意味するのでしょうか?mingw の下に 128 ビット整数はありませんか? そうでない場合、ネイティブ (および FAST) 128 ビット整数を持つ Windows 用のプログラミング言語はありますか?

0 投票する
2 に答える
1483 参照

c++ - gmp を使用した固定サイズの整数...?

私はMINGWの下にGMPライブラリをインストールしようと何日も試みてきました。Linux64 ビット環境で gccを数週間使用してから__uint128_t、同じプログラムを GMP と mingw (32 ビット版) に移植しました。mpz_classの代わりに整数を使用し__uint128_tました。それから私は私の新しいプログラムを始めました...!および 64 ビットで__uint128_tは完了するのに 16 分かかり、GMP および MINGW では 91 時間かかります!!!

物事を少しスピードアップするにはどうすればよいですか? 32 ビット環境で 128 ビット整数演算を行うより高速な方法はありますか? 128ビット以上は必要ないので、GMPに「わかりました。128ビットだけ必要です。精度を固定しておきますが、もっと速くしてください」と伝える方法はありますか?

0 投票する
2 に答える
3642 参照

performance - アセンブリ言語を使用した128ビットシフト?

最新のIntelCPU(Core i7、Sandy Bridge)で128ビットシフトを実行する最も効率的な方法は何ですか。

同様のコードが私の最も内側のループにあります:

のデータa[N]はほぼランダムです。

0 投票する
5 に答える
6437 参照

visual-c++ - Visual C++ に組み込まれている 128 ビット除算

Visual C++ には本当に 128 ビット除算の組み込み関数がないのでしょうか?

と呼ばれる 64x64=128 ビットの乗算組み込み関数があり、これはx64 アセンブラー命令_umul128()とうまく一致します。MUL

当然のことながら、128/64=64 ビットの除算組み込み (DIV命令のモデル化) もあると思いましたが、驚いたことに、Visual C++ も Intel C++ もそれを持っていないようで、少なくとも intrin.h にはリストされていません。

誰かがそれを確認できますか?コンパイラの実行ファイルの関数名をgrepしてみましたが、そもそも見つからなかっ_umul128たので、探し方を間違えたのでしょう。

更新: 少なくともumul128、Visual C++ 2010 の c1.dll でパターン (先頭のアンダースコアなし) を見つけました。他のすべての組み込み関数はその周りにリストされていますが、残念ながら「udiv128」などはありません:(それを実装することを「忘れて」います。

明確にするために:私は128ビットのデータ型を探しているだけでなく、C++で128ビットのスカラーintを64ビットのintで割る方法も探しています。組み込み関数またはネイティブの128 ビット整数サポートのいずれかが問題を解決します。

編集:答えはノーです_udiv128。Visual Studio 2010 から 2017 までの組み込み関数はありませんが、Visual Studio 2019 RTM で利用できます。