如何生成8位二进制值

如何生成8位二进制值

我只是实现 obase=2 方法将十进制转换为 8 位二进制。但当我转换小数(例如 1 和 2)时,我没有得到零,它只是将小数 1 输出为二进制 1(没有零),但我想获得所有带有前导零的 8 位小数。我能为此做些什么呢?

这是我使用的代码

c=$(echo "obase=2,$d" | bc)
echo binary $c 

假设 $d 存储 0-255 之间的所有十进制值这是我得到的输出

答案1

由于您想打印格式化数据,因此请勿使用echo.使用printf

$ binaryvalue='101'
$ printf "%08d\n" "$binaryvalue"
00000101

的格式标记%08d表示打印数字值,八个字符宽,带前导零。

相关内容