反编译实例2:补充3

前面反编译分别使用goto,for语句实现了语句跳转和循环,接下来分析使用while do语句是否可以:

#include int main(int argc, char** argv) { int r2; int r5 = 300; int r6 = 20; int r4 = 0; while(r4<=r5) { r2 = (r4*5 - 160)/9; printf("%d\t%d\n", r4, r2); r4 += r6; } return 0; } 使用IDA打开编译生成的.o文件:

结果发现,汇编结果是一样的,说明while do语句也可以实现。

当然,作为尝试,r2定义到while语句中结果并没有发生变化。

转载于:https://www.cnblogs.com/fangzhengshu/archive/2011/10/11/2210707.html

你可能感兴趣的:(反编译实例2:补充3)