Answers:
echo 'ibase=16;C06D1000-C06A5E78' | bc
176520
请注意,仅支持大写十六进制数字,因为小写字母将与函数和变量名称冲突,这就是为什么示例(var1 - var2
)中为0的原因
如果您也需要十六进制的答案,只需设置obase
变量:
echo 'obase=16;ibase=16;C06D1000-C06A5E78' | bc
2B188
PS:仅供参考,仅供参考scale
。来自man bc
:
scale defines how some operations use digits after the decimal point.
The default value of scale is 0.
obase
之前很重要ibase
。如果ibase
先设置,那么它obase
也会影响解析后的值。即ibase = 16; obase = 16;
设置obase
为0x16 = 22