标题:
如何快速查看将C反汇编的代码
[打印本页]
作者:
yuyang911220
时间:
2016-10-20 09:35
标题:
如何快速查看将C反汇编的代码
查看反汇编主要的思路在于将
流程,处理,算法
区分开来。
1 函数调用
:
原C代码:
int
sum(
int
,
int
);
int
main(){
int
c = sum(
1
,
2
);
printf(
"
c=%d
"
, c);
return
0
;
}
int
sum(
int
a,
int
b){
int
c = a + b;
return
c;
}
反汇编的函数调用主要使用bp-frame式(不懂自己去查去)的调用方式:
mmm
然后是被调用的sum:
ss
2 for循环
:
基本的for循环是这样的:
int
sum(
int
b){
int
c, i=
0
;
c =
0
;
for
(i=
0
; i<
4
; i++){
c += b;
}
return
c;
}
然后反汇编后,for循环一般是以下的形式的:
下面看看上面的c代码反汇编后变成了什么:
3 do-while循环
例子代码为:
int
sum(
int
b){
int
c, i=
0
;
c =
0
;
do
{
c += b;
i++;
}
while
(i <
4
);
return
c;
}
do-while循环的基本结构:
然后我例子代码的反汇编为:
4 while循环
|
例子代码为:
int
sum(
int
b){
int
c, i=
0
;
c =
0
;
while
(i <
4
){
c += b;
}
return
c;
}
while反汇编的基本结构为:
上述代码反汇编的结果为:
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0