gpt4 book ai didi

javascript - "Simulate"JavaScript 中的 32 位整数溢出

转载 作者:可可西里 更新时间:2023-11-01 02:44:47 27 4
gpt4 key购买 nike

JavaScript 可以很好地处理以下数学运算:

var result = (20000000 * 48271) % 0x7FFFFFFF;

但在某些编程语言中,第一个 int*int 乘法会导致值太大而无法用标准的 32 位整数保存。有什么方法可以在 JavaScript 中“模拟”这个,看看如果乘法导致整数溢出,计算结果会是什么?

最佳答案

可以通过“滥用”JavaScript 中可用的按位运算符来模拟 32 位整数(因为它们只能返回该范围内的整数)。

转换为带符号的 32 位整数:

x = (a * b) | 0;

转换为无符号 32 位整数:

x = (a * b) >>> 0;

关于javascript - "Simulate"JavaScript 中的 32 位整数溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23577810/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com