我的程序输出编码指令,如下所示:
0x81FB4300000090
0x69FC4300000090
0x81FC4300000090
0x69FD4300000090
0x81FD4300000090
0x69FE4300000090
0x81FE4300000090
0x69FF4300000090
0x81FF4300000090
0x00054400000090
0x01054400000090
0x02054400000090
0x03054400000090
0x08054400000090
0x09054400000090
0x0A054400000090
0x0B054400000090
0x10054400000090
0x11054400000090
0x12054400000090
0x13054400000090
0x18054400000090
0x19054400000090
0x1A054400000090
0x1B054400000090
0x20054400000090
0x21054400000090
0x22054400000090
0x23054400000090
0x28054400000090
0x29054400000090
0x2A054400000090
0x2B054400000090
0x30054400000090
0x31054400000090
0x32054400000090
0x33054400000090
0x38054400000090
0x39054400000090
0x3A054400000090
0x3B054400000090
0x40054400000090
0x41054400000090
0x42054400000090
0x43054400000090
0x44054400000090
0x45054400000090
0x46054400000090
0x47054400000090
上面的每一行都是独立的指令集,需要作为单独的程序进行反汇编。每行包含 7 个字节的指令。我可以直接将它们输出为二进制,***在这种情况下,每个7字节的块都需要单独反汇编。
在运行我的程序的 bash 脚本中,我想过滤掉包含静态跳转的行。
那么,如何将每一行与 stdin 分开?(我想做类似的事情./my_C_program | the_disassembler | grep loopne
)
我尝试了 objdump,但它拒绝/dev/stdin
用作输入文件。