输入规则
二进制只接受 0、1;八进制接受 0 至 7;十六进制接受 0 至 9 和 A 至 F,字母不区分大小写。可在最前面加负号,不接受小数、逗号、内部空格或 0x 前缀。最多 256 个字符。
为什么不用普通数字先转换
JavaScript 普通数值无法精确表示所有很大的整数。这里逐位积累大整数,因此十进制 9007199254740993 不会被改成邻近数字。输入非法字符时直接提示,不返回看似正常但被截断的结果。
负数不是补码
输入 −10,二进制结果为 −1010,表达的是数学上的负十。计算机的有符号补码需要先约定 8 位、16 位等位宽;本工具没有这样的位宽约定,因此不提供补码、浮点编码或字节序转换。