问题标签 [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.
integer - cuda上的128位整数?
我刚刚设法在 Linux Ubuntu 10.04 下安装了我的 cuda SDK。我的显卡是 NVIDIA geForce GT 425M,我想用它来解决一些繁重的计算问题。我想知道的是:有没有办法使用一些无符号的 128 位 int var?当使用 gcc 在 CPU 上运行我的程序时,我使用的是 __uint128_t 类型,但是将它与 cuda 一起使用似乎不起作用。我可以做些什么来在 cuda 上使用 128 位整数吗?
c - Windows上带有c的128位整数?
windows 上是否有任何 c 编译器能够本机使用 128 位整数?例如,您可以在 linux 上使用 gcc,在 Windows 上使用 __uint128_t ... 还有其他机会吗?(如果 128 位也能在 32 位计算机上工作,那就太好了!:D)
马泰奥
gcc - 如何在 x86 和 x86_64 上使用 Gcc 4.6.0 libquadmath 和 __float128
我有中等大小的 C99 程序,它使用long double
类型(80 位)进行浮点计算。我想通过新的 GCC 4.6 扩展来提高精度__float128
。据我所知,它是一个软件模拟的 128 位精度数学。
我应该如何将我的程序从 80 位的经典长双精度浮点数转换为 128 位的四浮点数,并使用全精度的软件仿真?我需要改变什么?编译器标志,来源?
我的程序使用 读取全精度值strtod
,对它们执行许多不同的操作(如 +-*/ sin、cos、exp 和其他 from <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"
php - 只想把代码解码成纯文本
我们想了解更多关于函数 get_rnd_iv() 和 md5_encrypt() 的信息,这些函数使用 128 位编码。现在在这里我们只想知道如何将该代码解码为纯文本......
这是我所有的代码行..
floating-point - 128 位“长浮点”有用吗?
前几天我意识到最常见的 lisp 有 128 位的“长浮点数”。结果,最正的长浮点数是:
而最正的双浮点数是1.7976931348623157 * 10^308
,这已经相当大了。
我想知道是否有人需要大于 的数字1.7976931348623157 * 10^308
,如果需要,在什么情况下?
你觉得默认使用编程语言有用吗?
在某些情况下,64 位双浮点的精度是否不够?我很想听听用例。
c - __uint128_t 上 mingw gcc
我正在尝试在mingw gcc下编译ac程序。该程序使用__uint128_t
整数。当我尝试在同一台 64 位机器上的标准 ubuntu gcc 下编译它时,它完美地工作。但是,当我尝试在 mingw 下为 windows 编译它时,它甚至根本无法识别__uint128_t
关键字。这是什么意思?mingw下没有128位整数吗?如果没有,是否有任何具有本机(和 FAST)128 位整数的 Windows 编程语言?
c++ - 使用 gmp 固定大小的整数...?
几天来,我一直在尝试在 MINGW 下安装 GMP 库。我已经__uint128_t
在 linux64 位环境下使用 gcc 数周了,然后在 GMP 和 mingw(32 位版本)下移植了相同的程序。我使用mpz_class
整数而不是__uint128_t
. 然后我开始了我的新程序,然后......!使用__uint128_t
64 位需要 16 分钟才能完成,使用 GMP 和 MINGW 需要 91 小时!!!
我应该怎么做才能加快速度?有没有更快的方法在 32 位环境下进行 128 位整数数学运算?我不需要超过 128 位,所以有什么办法告诉 GMP “好的,我只需要 128 位,保持精度固定但请快点”?
performance - 使用汇编语言进行 128 位移位?
在现代英特尔 CPU(核心 i7,沙桥)上进行 128 位移位的最有效方法是什么。
类似的代码在我最内层的循环中:
里面的数据a[N]
几乎是随机的。
visual-c++ - Visual C++ 中的 128 位除法内在函数
我想知道 Visual C++ 中是否真的没有 128 位除法内在函数?
有一个 64x64=128 位乘法内在函数称为_umul128()
,它很好地匹配MUL
x64 汇编指令。
自然地,我假设也会有一个 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 中可用
c++ - C++ - GMP pow() 函数
我正在尝试pow(2,500)
用 C++ 做。但我认为long long
还不够。
有人说我可以用gmp.h
。pow(2,500)
但是我该怎么做gmp
?