问题标签 [multiplication]

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 投票
2 回答
1737 浏览

architecture - 多周期数据路径写入中的乘法

我想知道处理器如何从一开始就在多周期数据路径中进行乘法运算,即从指令读取->解码指令->读取寄存器文件等。

换句话说,我想知道,考虑到booth的乘法算法是单独实现的(给出了一个电路),你将如何扩展多周期数据路径以支持使用最少资源的乘法指令。

你能告诉除法吗?

0 投票
6 回答
6948 浏览

c - C中的MUL(汇编程序)

在汇编程序中,我可以使用 MUL 命令并获得 64 位结果 EAX:EDX,我如何在 C 中做同样的事情?http://siyobik.info/index.php?module=x86&id=210

我使用 uint64_t 并转换结果的方法不起作用^^

感谢您的帮助(=

0 投票
5 回答
15947 浏览

c++ - MOD 运算是否比乘法更占用 CPU?

为什么 mod ( %) 操作比乘法 ( ) 的成本高出2*倍多一点?

请更具体地说明 CPU 如何执行除法运算并返回 MOD 运算的结果。

在以下示例中,每个线程运行一秒钟。测试是在SPARC处理器上进行的。

0 投票
5 回答
3845 浏览

c - 为什么 uint_least16_t 在 x86_64 中的乘法比 uint_fast16_t 快?

C 标准对类型族非常不清楚uint_fast*_t。在 gcc-4.4.4 linux x86_64 系统上,类型uint_fast16_tuint_fast32_t都是 8 字节大小。但是,8 字节数字的乘法似乎比 4 字节数字的乘法要慢得多。下面的一段代码证明了这一点:

在程序上运行时间命令,我得到

如果我将类型更改为uint_fast16_t(和 printf 修饰符),则时间变为

uint_fast16_t那么,如果将 stdint.h 标头(以及 uint_fast32_t)定义为 4 字节类型,不是更好吗?

0 投票
3 回答
4067 浏览

c++ - 双乘法给出四舍五入的结果

我期待结果是“999898.9892”但得到“999899”。我需要实际的未舍入结果。请提出建议。

0 投票
7 回答
4714 浏览

c - 即使 a 乘以 b 不适合这种类型,如何仅使用 32 位整数类型计算 (a 乘以 b) 除以 c

考虑以下作为参考实现:

我对不需要 64 位整数类型的实现(在 C 或伪代码中)感兴趣。

我开始草拟一个概述如下的实现:

但困难在于为 d1 和 d2 选择能够避免溢出的值 ((a / d1) * (b / d2) <= UINT32_MAX) 并最大限度地减少整个计算的错误。

有什么想法吗?

0 投票
3 回答
390 浏览

c++ - C++ 64位整数运算:有人可以解释为什么这个有效而另一个无效吗?

我需要对 64 位整数进行操作。我试图将 36 的结果提高到 12 的幂作为练习(并且作为要求)。

我在我的 VS2008 编译器上使用了 unsigned long long 作为 64 位整数。我已经编写了下面的代码,有人可以向我解释一下,为什么我的 for 循环版本会产生不正确的结果,而我的递归版本的 Power 函数会产生正确的结果?

仅供参考:36 提高到 12 是 4738381338321616896

0 投票
2 回答
6861 浏览

scheme - 如何在方案中进行加法和乘法

在将值与变量相乘并将它们分配给 Scheme 中的变量时,我需要帮助。

例如我有..

..

我需要做类似的事情

整体 = usrInput*part1 + usrInput*part2 + part3

在方案

我知道如何将 2 个变量/标量加在一起,但我在这里卡住了,请您指教...

谢谢你。

0 投票
3 回答
2633 浏览

php - 如何将php数组的元素相乘

我正在尝试将 javascript 函数转换为 php,但我的数组存在一些问题。我需要遍历数组元素,将它们全部乘以一定数量,但它不会改变值。很确定这是因为我的语法 $coordinates_p[i][0] *= $scale; 不正确,但我不确定它应该是什么!

测试代码:

0 投票
2 回答
4179 浏览

assembly - 如何将两个 32 位寄存器组合成 64 位答案?

我正在使用我认为使用 MIPS 的 pcsim 程序。我并不积极,因为我对汇编语言很陌生。我只需要使用 add 和 shift 将两个 32 位数字相乘并将乘积存储在两个寄存器中。如果结果可以存储在 32 位中,我已经将它成功地乘以两个数字。问题是,如果数字大于这个数字,我无法弄清楚如何将产品的右半部分与左半部分结合起来。左半部分寄存器应该保存从 2^32 开始的值。如果不清楚,我可以尝试解释更多。我忽略了一些简单的方法来实现这一点吗?谢谢你的帮助。