想看一下main函数的反汇编程序,分析一下:

int main()
{return 0;
}

反汇编:

1:    int main()
2:    {
00401010 55                   push        ebp           ;将ebp压入栈
00401011 8B EC                mov         ebp,esp   ;把esp赋值给ebp
00401013 83 EC 40             sub         esp,40h   ;esp减少40h
00401016 53                   push        ebx               ;ebx也入栈
00401017 56                   push        esi               ;esi压入栈
00401018 57                   push        edi               ;edi入栈
00401019 8D 7D C0             lea         edi,[ebp-40h] ;将ebp-40h的值赋值给edi
0040101C B9 10 00 00 00       mov         ecx,10h       ;ecx赋值为10h
00401021 B8 CC CC CC CC       mov         eax,0CCCCCCCCh    ;eax赋值为0CCCCCCCCh
00401026 F3 AB                rep stos    dword ptr [edi]
3:        return 0;
00401028 33 C0                xor         eax,eax           ;将eax赋值为0
4:    }
0040102A 5F                   pop         edi                   ;出栈的数据赋值给edi
0040102B 5E                   pop         esi                   ;出栈的数据赋值给esi
0040102C 5B                   pop         ebx                   ;出栈的数据赋值给ebx
0040102D 8B E5                mov         esp,ebp       ;将ebp的值传给esp
0040102F 5D                   pop         ebp                   ;出栈的数据赋值给ebp
00401030 C3                   ret                               

如果不认识rep和stor指令,可以看一下这篇文章

rep和stos指令

c和汇编混合编程----main的反汇编相关推荐

  1. C和汇编混合编程----实现浮点数的加减乘除

    加法 C程序: #include "stdio.h"int main() {float a=1.0;float b=2.34;float c;c=a+b;printf(" ...

  2. c和汇编混合编程----shellcode----弹出计算器

    先用c和汇编混合编程成功弹出计算器(在VC++里运行) #include "stdio.h" #include "windows.h"int main(int ...

  3. ARM中C和汇编混合编程及示例

    在嵌入式系统开发中,目前使用的主要编程语言是C和汇编,C++已经有相应的编译器,但是现在使用还是比较少的.在稍大规模的嵌入式软件中,例如含有OS,大部分的代码都是用C编写的,主要是因为C语言的结构比较 ...

  4. C和汇编混合编程---栈平衡

    最近在搞C和汇编混合编程,对栈平衡有点小理解,记录一下 当我们调用一个API或者子程序时时,API和子程序可以理解为函数,我们不必在返回的时候平衡栈里面的函数参数,但C语言库函数要我们自己平衡栈数据, ...

  5. arm export 汇编_C/C++与汇编混合编程有什么好处?

    1.导语 当需要C/C++与汇编混合编程时,可以有以下两种处理策略: 若汇编代码较短,则可在C/C++源文件中直接内嵌汇编语言实现混合编程. 若汇编代码较长,可以单独写成汇编文件,最后以汇编文件的形式 ...

  6. 51汇编与c语言混合编程,C51与汇编混合编程详解

    C51与汇编混合编程详解 0750long | 2009-07-09 12:45:42    阅读:1257 发布文章 C51与汇编混合编程详解 C51和汇编混合编程(1)-C语言中嵌入汇编 1.在 ...

  7. arm汇编和c语言混合编程实验报告,实验三C语言和ARM汇编混合编程指导书.doc

    实验三C语言和ARM汇编混合编程指导书 实验三 1. 实验目的 掌握C语言和ARM汇编混合编程方法. 2. 实验设备 硬件:PC 机 一台 软件:Windows98/XP/2000 系统,ADS 1. ...

  8. C和汇编混合编程---do while

    环境:VC++ do while 会先执行do里面的循环体,执行完去执行while的条件判断,如果为真,继续执行do里面的循环体,如果为假,则结束循环 C程序: #include "stdi ...

  9. 嵌入式c语言汇编混合编程,嵌入式C语言和汇编语言的混合编程

    此文章简单介绍 单片机 C语言和汇编语言混合编程的例子.主要用单片机汇编语言编写DS1302的底层驱动,在C语言里通过调用汇编语言,从而实现C和汇编的混合编程. ;汇编语言源文件 ;========= ...

最新文章

  1. html服务器显示,html显示服务器盘符
  2. java.awt.action 命令模式_java设计模式之命令模式
  3. VTK:Utilities之KnownLengthArray
  4. 洛谷P2341 [HAOI2006]受欢迎的牛 (Tarjan,SCC缩点)
  5. 神经网络与深度学习——TensorFlow2.0实战(笔记)(四)(python上下文管理器)
  6. 我们变成了最小的,当我们发现不了最弱小的时候
  7. 拳王虚拟项目公社:通过网络卖虚拟产品,月入1W的全自动化推广引流技术
  8. 如何给python装库_python一键式装单机和RAC数据库
  9. 深圳爱思拓大数据 网站_建议收藏!13个大数据学习网站很少人知道!附大数据自学资料分享...
  10. python逻辑运算符例子_python运算符-实战中常用的三个逻辑运算符使用实例
  11. 安卓-利用android studio制作简单的QQ登陆login界面
  12. 推荐系统的常用算法原理和实现
  13. 「HEOI 2014」南园满地堆轻絮
  14. 修复华为移动服务器,移动app云服务器异常
  15. 加解密技术基本使用指南(Base64、Hex、AES、SM4、RSA 算法)
  16. ## KEIL 5在MDK注册过程中LIC无法添加的问题解决:
  17. MAC版本subline text快捷键大全
  18. cocos creater 使用.max文件/.max文件转换为.fbx文件
  19. 电路矢量图编辑器数据库设计
  20. 八年级上册历史知识点(第1课 鸦片战争)

热门文章

  1. 字符串、对象、数组操作方法、json方法
  2. 【开发调试】谷歌浏览器中调试移动网页和测试网速下页面效果
  3. 信息的Raid存储方式,更安全的保障,更花钱的保障!
  4. C# -- HttpWebRequest 和 HttpWebResponse 的使用
  5. Unicode与JavaScript详解 [很好的文章转]
  6. Freemarker宏和函数的用法和区别
  7. 步骤菜单使用css3实现
  8. amoeba mysql proxy_mysql proxy amoeba安装配置
  9. python怎样编写定时程序_Python如何实现定时器功能
  10. python控制台执行代码字符串_编写Python脚本以使用控制台命令执行