这门课的标题里有个容易被忽略的词:学前准备。很多人看到“学前准备”就跳过,直奔后面讲语法的章节,结果学到指针和内存布局时卡住,回头再补,时间已经浪费了。这篇导读不讲目录,只讲一件事:你现在的底子,够不够直接进这门课;如果不够,该先补哪一块。
先说清楚它不是什么
这门课不是零基础扫盲班。虽然它从 C/C++ 基础语法讲起,但它把“正向”和“逆向”放在一条线上并行推进——正向是写出能跑的代码,逆向是看懂别人写好的二进制在干什么。两条线共用同一套底层知识:内存布局、调用约定、指针与地址的关系、编译产物长什么样。这套知识如果一开始就没打牢,后面看反汇编会变成看天书。
所以这门课真正的门槛不在语法,而在“你脑子里有没有一台计算机的执行模型”。你知道 int a = 5; 这行代码在内存里对应什么吗?你知道函数调用时栈上发生了什么吗?如果这两个问题让你犹豫,那“学前准备”这一章就是给你准备的,别跳。
这门课要你补的三个缺口
第一个缺口:C/C++ 的语法你会用,但说不清为什么。会写循环、会用结构体、能调库函数,这是“会用”。但逆向要求你反过来——看到一段汇编,能还原出它原本大概是哪个 C 结构。这需要你对语法背后的语义有感觉,而不是背规则。
第二个缺口:你从没打开过编译器生成的中间产物。正向开发者习惯了 IDE 一键运行,逆向的人必须习惯去看预处理结果、汇编输出、链接后的可执行文件。这不是技能高低的问题,是视角问题。这门课把正向和逆向并行讲,本质上就是在逼你切换视角。
第三个缺口:你没有“把一个完整程序拆开再装回去”的经验。远程控制系统、音视频处理、加密播放器、IM 通讯——这些项目被选进来,不是因为它们名字好听,而是因为它们的结构足够典型:都有网络通信、都有数据编解码、都有需要保护的逻辑。这类程序是正逆向结合训练最好的靶子。
看之前,先动手做两件小事
不用等开课,现在就可以做。第一,用你熟悉的 C 或 C++ 写一个最简单的函数调用,然后用编译器的汇编输出选项看一眼生成的代码,试着找出参数是怎么传进去的、返回值放在哪。看不懂没关系,重要的是你开始面对“编译器到底做了什么”这个问题。
第二,找一个你写过的小程序的可执行文件,用十六进制查看工具打开,随便看看开头几行。你不需要读懂,只要建立一个印象:你写的代码最终变成的是这样的东西。这两个动作花不了半小时,但它们能让你在正式进入课程时,脑子里有具体的画面,而不是抽象的概念。
学完之后你应该能回答的问题
- 一个函数的参数和局部变量,在栈上是怎么排布的?为什么逆向时能从栈操作反推出参数个数?
- 同一个功能,正向实现和逆向还原的思路差在哪一步?为什么说“看得懂汇编”不等于“能还原逻辑”?
- 面对一个带通信和编解码的完整程序,你从哪一层切入去分析比较省力?
- 你写的代码在编译后留下了哪些可以被别人利用的信息?哪些做法会让逆向变难,哪些只是心理安慰?
如果你现在对这四个问题只有模糊的感觉,那就对了——这门课就是把这些模糊的感觉,变成你动手能验证的结论。学前准备这一章,值得你花时间,不是走过场。
易道云正向逆向|01 学前准备欢迎入学-课程为直播+录播 详情咨询
C/C++基础与实战项目,正向逆向结合
编辑点评
全面掌握C/C++编程,正向逆向技术并行学习,实战项目丰富,适合有志于深入编程领域的学员。
⭐ 编辑推荐
本课程涵盖C/C++基础语法,结合正向逆向实战项目,助你成为全栈编程高手。
课程包含:
- C/C++基础语法
- 正向逆向技术
- 实战项目:远程控制系统、音视频系统、加密播放器、IM易栈项目等
适合人群:有编程基础,想深入学习C/C++的学员。
课程亮点
课程目录
易道云正向+逆向 01 学前准备欢迎入学-课程为直播+录播 详情咨询 02 学前准备编程环境的配置和安装 03 CC++ 基础语法称号任务介绍 04 CC++ 基础语法认识CC++ 05 CC++ 基础语法基本数据类型和计算一 06 CC++ 基础语法基本数据类型和计算二 07 CC++ 基础语法基本数据类型和计算三 08 CC++ 基础语法位运算 09 CC++ 基础语法判断一 10 CC++ 基础语法判断二 100 正向实战项目跨局域网远程控制系统 远程控制一 101 正向实战项目跨局域网远程控制系统远程控制二 102 正向实战项目跨局域网远程控制系统远程控制三 103 正向实战项目跨局域网远程控制系统远程控制四 104 正向实战项目跨局域网远程控制系统代码重构一 105 正向实战项目跨局域网远程控制系统代码重构二 106 正向实战项目跨局域网远程控制系统代码重构三 107 正向实战项目跨局域网远程控制系统代码重构四 108 正向实战项目跨局域网远程控制系统代码重构五 109 正向实战项目跨局域网远程控制系统UDP穿透 11 CC++ 基础语法循环一 110 正向实战项目跨局域网远程控制系统项目总结 111 正向实战项目音视频系统开发客户端设计一 112 正向实战项目音视频系统开发客户端设计二 113 正向实战项目音视频系统开发客户端开发一 114 正向实战项目音视频系统开发客户端开发二 115 正向实战项目音视频系统开发服务端一 116 正向实战项目音视频系统开发服务端二 117 正向实战项目音视频系统开发服务端三 118 正向实战项目音视频系统开发服务端调试与测试 119 正向实战项目加密播放器易播客户端项目准备 12 CC++ 基础语法循环二 120 正向实战项目加密播放器易播客户端软件开发流程 121 正向实战项目加密播放器易播客户端项目设计 122 正向实战项目加密播放器易播客户端软件需求分析 123 正向实战项目加密播放器易播客户端概要和详细设计实现 124 正向实战项目加密播放器易播客户端软件界面开发 125 正向实战项目加密播放器易播客户端软件功能开发 126 正向实战项目加密播放器易播客户端项目单元测试与总结 127 正向实战项目百万并发IM易栈项目项目准备 128 正向实战项目百万并发IM易栈项目客户端一 129 正向实战项目百万并发IM易栈项目客户端二 13 CC++ 基础语法数组 130 正向实战项目百万并发IM易栈项目客户端三 131 正向实战项目百万并发IM易栈项目客户端四 132 正向实战项目百万并发IM易栈项目客户端五 133 正向实战项目百万并发IM易栈项目客户端六 134 正向实战项目百万并发IM易栈项目客户端七 135 正向实战项目百万并发IM易栈项目客户端八 136 正向实战项目百万并发IM易栈项目服务端一 137 正向实战项目百万并发IM易栈项目服务端二 138 正向实战项目百万并发IM易栈项目服务端三 139 正向实战项目百万并发IM易栈项目服务端四 14 CC++ 基础语法指针和引用一 140 正向实战项目百万并发IM易栈项目服务端五 141 逆向入门分析游戏保护基础准备工作 142 逆向入门分析游戏保护基础信息显示的实现 143 逆向入门分析游戏保护基础HOOK 144 逆向入门分析游戏保护基础CALL 145 逆向入门分析游戏保护基础注入 146 X86汇编语言计算机原理 147 X86汇编语言计算机组成原理 148 X86汇编语言常用寄存器 149 X86汇编语言常用指令一 15 CC++ 基础语法指针和引用二 150 X86汇编语言常用指令二 151 X86汇编语言常用指令三 152 X86汇编语言常用指令四 153 X86汇编语言常用指令五 154 X86汇编语言系统调用 155 X86汇编语言混合汇编 156 IDA实战课程实战操作一 157 IDA实战课程实战操作二 158 逆向实战项目GameHacker分析工具入口点注入一 159 逆向实战项目GameHacker分析工具入口点注入二 16 CC++ 基础语法指针和引用三 160 逆向实战项目GameHacker分析工具Hook引擎的设计 161 逆向实战项目GameHacker分析工具更强大的HOOK引擎 162 逆向实战项目GameHacker分析工具吊打CRC32 无痕HOOK引擎 163 逆向实战项目GameHacker分析工具注入检测与无痕注入一 164 逆向实战项目GameHacker分析工具注入检测与无痕注入二 165 逆向实战项目GameHacker分析工具游戏分析工具RAN一 166 逆向实战项目GameHacker分析工具游戏分析工具RAN二 167 逆向实战项目GameHacker分析工具游戏分析工具RAN三 168 逆向实战项目GameHacker分析工具黑兔档案局SDK 169 逆向实战项目游戏保护项目分析游戏改造 17 CC++ 基础语法联合体 170 逆向实战项目游戏保护项目分析项目搭建与架构 171 逆向实战项目游戏保护项目分析启动与多开 172 逆向实战项目游戏保护项目分析信息显示 173 逆向实战项目游戏保护项目分析事件与接口 174 逆向实战项目游戏保护项目分析脚本系统 175 逆向实战项目游戏保护项目分析移动系统 176 21年7月8月直播回放一 177 21年7月8月直播回放二 18 CC++ 基础语法字符串 19 CC++ 基础语法函数一 20 CC++ 基础语法函数二 21 CC++ 基础语法函数三 22 CC++ 基础语法函数四 1.C全栈工程师的学习路线.mp4 [143.7MB] 2.易道云的前世今生.mp4 [197.0MB]
适合人群
- C/C++编程爱好者
- 全栈工程师
- 有志于深入编程领域的学员
学习收获
祝您学习愉快!
学有所成,前程似锦!





