【发布时间】:2014-02-15 19:32:27
【问题描述】:
我有 10 位有符号二进制数。我知道两种 shell / bash 方法可以将它们转换为小数,但无法识别签名。
1111101010 应转换为 -22 而不是 1002。
echo "ibase=2;obase=A;1111101010"| bc
不起作用。以下也不行。
echo "$((2#1111101010))"
我能做什么?
编辑:给出错误的预期结果;错误:-220,正确:-22。
【问题讨论】:
-
去掉前面的数字,做一些数学运算。
-
另外,你的例子正确吗?在我看来它不是 -220。
-
对不起,我跳过了另一个计算 1111101010 是 -22。