我已经尝试了这个,我用文本编辑器打开了一个a.out文件但是我只得到了一堆字符,里面有一些说明:
UU
答案 0 :(得分:5)
答案 1 :(得分:3)
查找您当地的友好Hex Editor。
答案 2 :(得分:0)
仅查看代码的反汇编(带操作码字节),不包括任何文件头:
objdump -d a.aot
答案 3 :(得分:0)
可执行文件有多种格式。对于Unix / Linux,它是ELF: http://en.wikipedia.org/wiki/Executable_and_Linkable_Format
对于Windows,它是PE: http://en.wikipedia.org/wiki/Portable_Executable
使用objdump工具查看其他人指出的操作码
答案 4 :(得分:0)
当您打开一个二进制文件时,您会看到不可读的字符,原因是ascii编码使用7位,因此编辑器无法识别所有代码点在128到255之间的字符。未知字符。
如果要查看二进制文件的所有内容,可以使用hexdump,objdump和readelf之类的程序,例如,假设我们要将/ bin / bash作为linux(elf)中的二进制文件分解为它的字节以十六进制表示,所以我们说:
hexdump / bin / bash
但这类文件的最佳工具是:readelf
如果我们想以比hexdump输出更易于理解的格式查看二进制文件的所有内容,我们可以说:
readelf -a / bin / bash
,我们将看到二进制文件的所有不同部分(elf头,程序头,部分头和数据)。
还使用其他标志,一次只能看到一个标头,也可以反汇编文件中的.text节,依此类推。