我不明白'od‘程序的输出。
假设我在测试文件中写入内容"abc“:
echo "abc" > test.txt然后,通过ASCII表将字符a (01100001)、b (01100010)和c (01100011)转换为二进制字符并保存在文件中。因此,我希望该文件包含以下几个部分
011000010110001001100011如果我用'xxd‘转换文件,结果如下:
$ cat test.txt | xxd -b
00000000: 01100001 01100010 01100011 00001010 abc.(最后8位(.)已经让我困惑了,但我想这是因为“猫”的排泄物)
Now:如果我试图将文件转换为'od',则会出现以下图片
$ od test.txt
0000000 061141 005143
0000004我这里有问题。我不明白你是怎么算出这些数字的。据我所知,od接受一个字节(例如,第一个-> 01100001 -> 'a')并将这个数字转换为八进制数字系统。但这应该会导致“141”。
有人能给我解释一下这个问题吗?
发布于 2021-03-16 20:56:23
这就是od从ab到061141的方式
ab => 0x6162 => 0x6261 (交换字节)= 25185 (分贝)= 061141 (八进制)
https://stackoverflow.com/questions/66662450
复制相似问题