无需登录 数据私有 本地保存

BigInt 在线计算器 - 任意大整数运算与进制转换

14
0
0
0
大整数四则运算

支持任意精度的加法(+)、减法(-)、乘法(*)和除法(/)运算。所有运算均基于 JavaScript BigInt 原生实现,保证数学上的精确性。加法和减法可以处理正数、负数和零的任意组合,乘法支持两个超大整数的精确相乘,除法采用截断除法(向零取整),同时返回商和余数。无论是处理包含数十位数字的万亿级运算,还是验证密码学算法中的中间计算结果,本工具都能在毫秒级完成并返回精确结果,完全不用担心浮点数精度问题。

取模与幂运算

支持取模运算(%)用于计算除法的余数,以及幂运算(**)用于计算指数。取模运算的余数符号始终与被除数一致,这是 BigInt 规范的定义。幂运算要求指数为非负整数(即 0 或正整数),不支持负数指数和小数指数。即使指数非常大(如 2 的 10000 次方),也能在合理时间内完成计算。计算完成后会自动显示结果的位数,例如 210000 将产生一个 3011 位的十进制数字。这对于理解指数增长的速度非常有帮助。

GCD 与 LCM 计算

内置最大公约数(GCD,Greatest Common Divisor)和最小公倍数(LCM,Least Common Multiple)计算功能。GCD 使用欧几里得算法(辗转相除法)实现,LCM 通过公式 LCM(a, b) = |a × b| / GCD(a, b) 推导得出。这两个函数在数论研究、密码学(如 RSA 密钥生成中的欧拉函数计算)、分数化简、以及各种算法竞赛题目中有广泛应用。支持任意大小的正整数输入,即使是数百位的大素数也能快速计算 GCD 和 LCM。

位运算支持

完整支持 BigInt 的全部六种位运算操作:按位与(AND,&)、按位或(OR,|)、按位异或(XOR,^)、按位取反(NOT,~)、左移(<<)和有符号右移(>>)。BigInt 位运算的一个重要特点是使用无限位宽的二进制补码表示,这意味着负数有无限个前导 1,与 Number 类型的 32 位固定位宽位运算行为有显著不同。例如 ~0n 等于 -1n,而 ~0(Number)等于 -1,虽然结果看起来一样,但底层的二进制表示完全不同。

2-36 进制转换器

独立的进制转换模块,支持 2 到 36 进制之间的任意互转。转换过程基于 BigInt 的原生能力:先将输入字符串按源进制解析为 BigInt 值,再按目标进制转换为字符串表示。数字使用 0-9 和字母 a-z(不区分大小写)分别表示 0-35。由于使用 BigInt 作为中间值,转换过程不会出现精度丢失,可以处理超出 Number 安全整数范围的超大数字。页面还提供常用的快捷转换按钮,如十六进制转十进制、二进制转十进制、十六进制转二进制等,方便用户快速操作。

快捷填充预设

内置多种常用大数的快捷填充按钮,包括 264(约 1.8 × 1019,无符号 64 位整数最大值)、2128(约 3.4 × 1038,IPv6 地址空间大小)、2256(约 1.16 × 1077,接近可观测宇宙原子总数)等 2 的幂次,以及梅森素数 289-1(一个 27 位的素数)等。这些预设数字在密码学、计算机体系结构、网络安全等领域频繁出现。一键点击即可将对应数值填入操作数输入框,省去手动输入超长数字的繁琐操作,极大提升了工作效率。

位数与数量级显示

计算完成后自动显示结果的十进制位数和数量级估计。位数统计帮助你快速了解结果的数字长度,例如 264 有 20 位十进制数字,2256 有 78 位。数量级使用科学记数法表示结果的大致范围,例如 2256 的数量级约为 1.16 × 1077。这些信息对于理解超大数字的规模非常有价值:当看到一个数字的数量级为 1077,你就知道它已经接近可观测宇宙中的原子总数(约 1080)。在密码学中,密钥长度(以位为单位)直接关系到安全性,位数统计可以帮助评估密钥强度。

操作历史与结果复制

计算结果区域支持一键复制功能,方便将结果粘贴到代码编辑器、文档或其他工具中使用。对于需要多次比较不同运算结果的场景,你可以快速修改操作数并重新计算,新的结果会自动替换之前的结果。所有运算均在浏览器本地完成,不产生任何网络请求,确保了计算的即时性和数据的安全性。即使在没有网络连接的离线环境下,只要页面已加载,所有功能均可正常使用。