二进制文件的十六进制表示
Hexadecimal representation of a binary file
我有一个 binaryfile.bin,其中有一组指令,我必须将其解码为十六进制。
我在 java 中编写了一个程序来执行此操作,并且我得到的十六进制与我在 linux.
中从 Hexdump 中得到的相同
我知道二进制文件中每条指令的实际二进制文件应该是什么,因为这是给定的。这可以在下面看到。我可以看到这两个十六进制之间存在某种关系。
Hexdump Binary Hex of Binary
1303d007 00000111110100000000001100010011 7D00313
93033302 00000010001100110000001110010011 2330393
138ec3f9 11111001110000111000111000010011 F9C38E13
1305a000 00000000101000000000010100010011 A00513
73000000 00000000000000000000000001110011 73
我的问题是如何从 "hexdump" 到 "Hex of Binary" 或如何解决这个问题,因为我只提供了一个二进制文件?
我不希望我的问题太不清楚了?
一切都是为了 endianness。
每个字节由两个十六进制字符表示(每个十六进制为 4 位)。
你的hexdump,1303d007
是四个字节13
03
d0
07
.
您的十六进制到二进制,7D00313
是相同的四个字节,但格式和顺序不同。即07
D0
03
13
。为简单起见,07
前面的“0”被截断了,但随后您会注意到顺序已 100% 颠倒。
字节顺序告诉您字节在某种形式的传输或存储中出现的顺序。它回答了问题,"Is the most significant byte going to appear first or last?"。
我有一个 binaryfile.bin,其中有一组指令,我必须将其解码为十六进制。 我在 java 中编写了一个程序来执行此操作,并且我得到的十六进制与我在 linux.
中从 Hexdump 中得到的相同我知道二进制文件中每条指令的实际二进制文件应该是什么,因为这是给定的。这可以在下面看到。我可以看到这两个十六进制之间存在某种关系。
Hexdump Binary Hex of Binary
1303d007 00000111110100000000001100010011 7D00313
93033302 00000010001100110000001110010011 2330393
138ec3f9 11111001110000111000111000010011 F9C38E13
1305a000 00000000101000000000010100010011 A00513
73000000 00000000000000000000000001110011 73
我的问题是如何从 "hexdump" 到 "Hex of Binary" 或如何解决这个问题,因为我只提供了一个二进制文件?
我不希望我的问题太不清楚了?
一切都是为了 endianness。
每个字节由两个十六进制字符表示(每个十六进制为 4 位)。
你的hexdump,1303d007
是四个字节13
03
d0
07
.
您的十六进制到二进制,7D00313
是相同的四个字节,但格式和顺序不同。即07
D0
03
13
。为简单起见,07
前面的“0”被截断了,但随后您会注意到顺序已 100% 颠倒。
字节顺序告诉您字节在某种形式的传输或存储中出现的顺序。它回答了问题,"Is the most significant byte going to appear first or last?"。