我在函数中插入一个字节:
void func_simple(){
...
asm volatile (
".align 4 \n"
".long 0xfafafafa \n"
);
...
}
如何计算func_simple
中插入字节前后的字节数?使用nm -S a.out | grep func_simple
我可以获得func_simple
的开始地址和长度,但我不知道如何进一步。
答案 0 :(得分:1)
如果我理解你,你可以尝试以下方法:
void func_simple(){
...
asm volatile (
".align 4 \n"
".global mydata \n"
"mydata:\n"
".long 0xfafafafa \n"
);
...
}
然后用“objdump”或“nm -S”查找符号“mydata”
答案 1 :(得分:0)
您可以使用objdump查看整个目标代码,该代码将指定函数的地址和语句。
我不确定你想要实现的目标。 您可以尝试使用gdb进一步分析代码的工作方式