上一页 1 2 3 4 5 6 7 8 9 10 ··· 44 下一页
摘要: 讲解之前,了解下什么是虚函数,什么是虚表指针,了解下语法,(也算复习了) 开发知识为了不码字了,找了一篇介绍比较好的,这里我扣过来了,当然也可以看原博客链接: http://blog.csdn.net/hackbuteer1/article/details/7558868 一丶虚函数讲解(复习开发, 阅读全文
posted @ 2019-07-21 00:23 gd_沐辰 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 目录大纲: 1.全局(静态)对象的识别,(全局静态全局一样的,都是编译期间检查,所以当做全局对象看即可.) 1.1 探究本质,理解构造和析构的生成,以及调用方式(重要,如果不想知道,可以看总结.) 2.对象做函数参数的识别 3.返回值为对象的识别 4.对象为静态局部的识别 5.堆中对象识别 5.1. 阅读全文
posted @ 2019-07-21 00:19 gd_沐辰 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 一丶了解什么是结构体,以及计算结构体成员的对其值以及总大小(类也是这样算) 结构体的特性 1.结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合 2.在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。 阅读全文
posted @ 2019-07-21 00:10 gd_沐辰 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 讲解数组之前,要了解数组的特性 1.数据具有连续性 2.数据类型相同 比如: int Ary[3] = {0,1,2}; 我们可以看出,上面定义的数组,数据是连续的,其中每个数据类型大小都是int类型(类型也是一样的) 汇编中识别数组: 1.地址连续 2.带有比例因子寻址 (lea reg32,[x 阅读全文
posted @ 2019-07-21 00:05 gd_沐辰 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 一丶认识全局的 (静态变量全局变量) 高级代码: 我们的静态局部变量 g_Number 会通过一个函数进行赋值初始化 VC6.0调试查看. 我们发现通过栈回朔会调用4个函数 调用顺序: _cinit() _initterm() $E2() #E1(); 首先讲解一下, _cinit函数是初始化函数, 阅读全文
posted @ 2019-07-21 00:00 gd_沐辰 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 一丶识别__cdecl 函数(俗称C Call),函数参数,函数返回值 首先写一个C Call的函数 1.返回值 int类型, 参数int 类型 高级代码: main函数调用我们的自己写的 Debug下的汇编代码 在Debug版本下的调用处,我们会看到这种代码,没有流水线优化,没有任何优化 看到了, 阅读全文
posted @ 2019-07-20 23:57 gd_沐辰 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 一丶do While在汇编中的表现形式 1.1高级代码: 高级代码很简单,只是一个简单的求1~100的累加 1.2 Debug版本下的汇编表现形式 代码定式很简单 ADDR .....do While逻辑代码块 xxxx 条件 JXX Addr 注意,在 do while中, 汇编代码的语义和高级代 阅读全文
posted @ 2019-07-20 23:52 gd_沐辰 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 一丶Switch Case语句在汇编中的第一种表达方式 (引导性跳转表) 第一种表达方式生成条件: case 个数偏少,那么汇编中将会生成引导性的跳转表,会做出 if else的情况(类似,但还是能分辨出来的) 1.高级代码: 2.汇编代码在Debug版本下: 可以看出,生成的跳转表 比较和跳转在一 阅读全文
posted @ 2019-07-20 23:46 gd_沐辰 阅读(827) 评论(0) 推荐(0) 编辑
摘要: 一丶if else的最简单情况还原(无分支情况) 高级代码: 总共两种情况,我们看下Release中怎么优化的把(注意,优化方式选择O2,速度优先) 汇编代码: 可以看到我们熟悉的代码了.也就是昨天的三目运算. 总共三行汇编代码. 还原套路一样,还是 代入大于0 小于0 还有==0,看看最终结果是什 阅读全文
posted @ 2019-07-20 23:40 gd_沐辰 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 一丶编译器优化方式 首先说一下编译器优化方式. 1.常量折叠 2.常量传播 3.复写传播 4.公共表达式 5.去掉不可达到分支 6.顺序代替分支 7.数学变化 8.代码外提 9.减少变量. 10 强度削弱. 优化方式解析 1.常量折叠 常量折叠已经讲过, 就是两个常量相加 8 + 8 ,那么在编译前 阅读全文
posted @ 2019-07-20 23:36 gd_沐辰 阅读(537) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 44 下一页