二补码计算器
在有符号十进制整数与固定宽度二补码二进制及十六进制形式之间进行转换。
众数
Bit width
Value interpreted from the bit pattern
这个计算器是如何工作的?
二补码计算器将有符号十进制整数转换为固定宽度的二进制和十六进制编码,或将位模式解码回十进制。非负值直接映射;负值存储为 v + 2^w。w 位数字的范围为 −2^(w−1) 到 2^(w−1) − 1,最高位表示符号。
公式
How this is calculated
二补码是计算机在固定位数(w)下存储有符号整数的标准方式。模式选择器决定转换方向:「十进制 → 二进制」输入有符号十进制值,「二进制 → 十进制」输入原始位模式。Value 字段接受有符号十进制整数或由 0 和 1 组成的字符串,位宽将 w 设置为 8、16、32 或 64。
编码十进制 v 时,非负值直接写成二进制并零填充至 w 位;负值编码为 v + 2^w,等价于将 |v| − 1 各位取反再加一(即「取反加一」规则),结果截取为 w 位。解码 w 位无符号读数 u 时,最高位为符号位:若为 1,则真值为 u − 2^w;否则值即为 u。十六进制输出是同一无符号位模式以 16 进制表示的结果。
w 位字段可表示从 −2^(w−1) 到 2^(w−1) − 1 的整数;超出此范围的十进制数及长于 w 位的位模式将被拒绝。由于 64 位值超出 JavaScript 安全整数限制,数学运算使用 BigInt 以确保二进制和十六进制输出精确,但显示时极大的 64 位数值在标题卡上可能会被舍入。
常见问题
在二补码中,负值存储为 v + 2^w,因此 8 位的 −1 变为 0xFF,32 位的 −1 变为 0xFFFFFFFF。最高位的 1 表示符号,而非巨大的正值。
w 位的有符号可表示范围为 −2^(w−1) 到 2^(w−1) − 1。8 位对应 −128 到 127,16 位对应 −32768 到 32767。超出此范围的值无法编码。
查看最高位(最左位)。若为 1,则数字为负,等于 u − 2^w;若为 0,则数字非负,等于 u。
也称为
TG we-Calculate Editorial Team. (2026). 二补码计算器 [Online calculator]. TG we-Calculate. https://we-calculate.com/zh/calculator/twos-complement-calculator
TG we-Calculate Editorial Team. "二补码计算器." TG we-Calculate. 2026. https://we-calculate.com/zh/calculator/twos-complement-calculator.
TG we-Calculate Editorial Team, "二补码计算器," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/zh/calculator/twos-complement-calculator
@misc{wecalculate_twos_complement_calculator, title = {二补码计算器}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/zh/calculator/twos-complement-calculator}}, year = {2026}, note = {TG we-Calculate} }
这个计算器对您有帮助吗?
