因为对unicore的指令组成不了解,所以自己写了程序测试下,目的是看看机器码,unicore是小端架构,用xxd 或者hexdump时看着有点不方便,那么这时可以用od命令
od 命令会读取所给予的文件的内容,并根据给定的参数输出内容,默认为八进制
参数:
-A d 表示最左侧的偏移量按十进制显示;-A还可以接[doxn],其中d表示十进制,o表示8进制,x表示16进制,n表示不显示该偏移量.
-A<地址进制> 选择要以何种基数计算字码
a
名称
c
ASCII
d 十进制,有符号
o
八进制
x
十六进制
n
不移位显示
-t x1表示如何显示文件内容。这里,x表示按照16进制输出文件内容,x后面跟的“1”表示一次显示一个字节
-t<显示格式>
选择数据显示的格式
a
名称
c
ASCII
d 十进制,有符号
f
浮点数
o 八进制
u
十进制,无符号
x
十六进制
注:如果在其后添加z将会显示现应的可打印字符,例如:
od -t x1z -A x filename
-w<字数> 设置每列最大字数
-v表示,即使连续多行都是完全相同的字符0,仍然原样输出;不加该参数,则会使用星号(*)跳过多个相同的行。
默认情况下od使用 -A o -t oS -w16
od -j 49152 -N 38 -w4 -A d -t x1 -v test.bin
意义:-j 49152 跳过前49152个字节
-N 38 仅显示38个字节
-w 4 每一行显示4个字节
-A d 表示左侧的偏移量按十进制显示
-t x1 输出格式为16进制,一组为一个16进制数