十六进制中的十六进制

问题描述 投票:0回答:1

我知道我们可以使用bash将十六进制转换为dec

#!/bin/bash
echo "Type a hex number"
read hexNum
echo $(( 16#$hexNum ))

但是当我用hexNum=9b4bbba36e494bcd运行它时,它给了我-7256500063973061683,即负值,它是2的补数。

我不希望它是2的补码。我想将hexNum=9b4bbba36e494bcd的输出作为11190244009736489933。如https://www.rapidtables.com/convert/number/hex-to-decimal.html?x=9b4bbba36e494bcd所给>

如何使用bash获取此输出?请帮助!

我知道我们可以使用#!/ bin / bash echo“将a十六进制数字”转换为bash中的dec形式的十六进制值,读取hexNum echo $(((16#$ hexNum)),但是当我使用hexNum = 9b4bbba36e494bcd运行它时,它给我-...

bash hex decimal
1个回答
0
投票

如评论中所指出,您的示例中的数字太大。 bash使用固定大小的整数进行计算。大数字将溢出。

© www.soinside.com 2019 - 2024. All rights reserved.