问题标签 [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 投票
5 回答
1117 浏览

c++ - 在 x86-64 平台上用 C(++) 计算 64 位无符号参数的 (a*b)%n FAST?

我正在寻找一种快速的方法来有效地计算 ( a⋅<code>b) 模n  (在数学意义上)为a, b,n类型uint64_t。我可以接受一些先决条件,例如n!=0,甚至a<n && b<n

请注意,C 表达式(a*b)%n不会削减它,因为产品被截断为 64 位。我正在寻找,(uint64_t)(((uint128_t)a*b)%n)除了我没有uint128_t(我知道,在 Visual C++ 中)。

我正在使用 Visual C++(最好)或 GCC/clang 内在函数,以充分利用 x86-64 平台上可用的底层硬件;或者如果不能为便携式inline功能做到这一点。

0 投票
1 回答
266 浏览

opengl - openGL中的128位纹理不显示(黑屏)

我创建这样的纹理:

我的显示功能如下所示:

着色器如下所示: 顶点:

分段:

不知何故,我只得到一个黑屏,即使像素都是 1.0(白色)。我看不出问题出在哪里:/

0 投票
2 回答
4521 浏览

gcc - 哪些 gcc 版本支持 __int128 内在类型?

gcc docs 下,128 位整数是:

作为扩展,整数标量类型__int128支持具有足够宽以容纳 128 位的整数模式的目标。只需写__int128一个有符号的 128 位整数,或unsigned __int128一个无符号的 128 位整数。

GCC 不支持为__int128具有小于 128 位宽的 long long 整数的目标表示类型的整数常量。

我想知道哪个 gcc 版本添加了对这种类型的支持,或者是否有一个可以直接用于测试其存在的宏。

0 投票
2 回答
1265 浏览

java - CRC 128 位的 Java 代码

我需要为从文档中提取的字符串计算 CRC 128 位校验和。

我在互联网上四处寻找,但找不到任何伪代码或 java 代码。

所以有人可以帮助我吗?

感谢您的关注。

0 投票
0 回答
764 浏览

assembly - mips 程序集中的 128 位整数

我必须在 MIPS 汇编(32 位)中编写一个程序,检查定点十进制数是否可以在 ieee754 中准确写入。
我知道浮动的结构,因此我这样做:

  1. 用逗号将数字拆分为整数和小数部分
  2. 将它们分别转换为整数(先到左乘以 10,然后再相加)
  3. 用这个 int 向右移位寄存器,直到它为零(知道位数)

但是,如果程序得到的数字是 3 个前导的,那么问题就开始了,然后我们有 40 个零。它仍然可以准确编写,但无法在我的程序中检测到(因为我将整数存储为 32 位数字)。所以我的问题是:

  • 如何正确写入将单个数字更改为整数的部分?

回想一下,我必须执行 2 个操作:将我拥有的所有内容乘以 10,然后添加另一个数字

可以通过逐步移动所有内容然后在每4个寄存器上指示溢出来完成吗?
(如果 ov==1 则将较高的 reg 左移并放一个?)
也许有更好的方法使用乘法过程中的 hi 和 low 寄存器?

感谢任何帮助:)

0 投票
1 回答
86 浏览

java - 需要使用 JNA (objc_msgSend) 调用返回 128 位值的本机函数

我正在为 ObjectiveC 编写 JNA 绑定,但我遇到了一个问题:

[NSValue sizeValue] 返回一个 NSSize 结构。

通常你会考虑使用 objc_msgSend_stret,但是当结构足够小时,它会在寄存器中返回,所以在这种情况下你必须只使用 objc_msgSend。NSSize 是 32 位模式下的两个浮点数,所以基本上很长。没问题。我使用 Function.invokeLong() 然后抓取指向我的结构的指针并将 long 写入两个浮点存储空间。但在 64 位模式下,它是 128 位的两个双打。我使用了 GCC --save-temps,果然返回的结构在 xmm0 和 xmm1 中。所以必须使用 objc_msgSend。

JNA 没有 Function.invokeLongDouble() 或 Function.invokeLongLong() (128 位返回值)

我该怎么办???

有关 objc_msgSend 和结构的更多详细信息,请参阅此链接: http ://www.sealiesoftware.com/blog/archive/2008/10/30/objc_explain_objc_msgSend_stret.html

0 投票
1 回答
587 浏览

c++ - 128位变量操作

在 c++ 中(Linux,不使用 boost)。

我有 2 个 64 位变量(long long)(比如 x 和 y)。

当我在做 x*y 时,结果可能是 128 位。我该如何存储它?是否有定义 128 位的变量?

(我需要一个 128 位的特定变量,因为稍后在我的程序中我可能会对该 128 位变量使用“/”操作)

谢谢

0 投票
1 回答
3330 浏览

c# - SQL Server 2012 中的 128 位整数?

我正在寻找在 SQL Server 中实现 128 位无符号整数的最佳方法。主要要求是它必须支持所有 128 位的按位运算。(这在 64 位机器上理论上是否可行?我离题了。)

我已经通过 CLR 程序集阅读了一些使用 C# 和用户定义类型的实现,但我无法确定它是否支持按位操作。

有没有人成功地完成了我需要做的事情?任何投入将不胜感激。谢谢!!

0 投票
2 回答
15610 浏览

python - 不能在 64 位架构上的 Python 中使用 128 位浮点数

我检查了我的python终端(在Enthought Canopy IDE中)中指针的大小

我有一个 64 位架构,使用起来numpy.float64很好。但我不能使用np.float128

或者

结果是:

我正在运行以下版本:

0 投票
2 回答
1612 浏览

c - 128乘法和除法的内在函数

在 x86_64 中,我知道 mul 和 div opp 代码支持 128 个整数,方法是将低 64 位放在 rax 中,将高位放在 rdx 寄存器中。我在 intel 内在函数指南中寻找某种内在函数来执行此操作,但我找不到。我正在编写一个字长为 64 位的大数字库。现在我正在用这样的一个词进行除法。

如果我可以在 x86intrinsics.h 标头中使用某些东西而不是内联 asm,那就太好了。