这门课名字里的关键词有两个:Windows 内核、X64 汇编。但它并不是教你怎么写内核驱动,而是把 x64 汇编当作一项底层工具来讲,落点在 Windows 平台上的实际使用。如果你对游戏安全、逆向分析这类方向有兴趣,或者工作中需要看懂、调试 64 位程序的底层逻辑,这门课值得花时间;如果你只是想「了解一下汇编长什么样」,它的密度可能会让你觉得吃力。

它实际解决的是什么问题

32 位汇编和 64 位汇编看起来只是位数差别,真正动手才会发现处处不一样。x64 新增了一批寄存器,调用约定从原来的栈传参改成寄存器传参,函数调用、参数顺序、栈平衡的规则都变了。很多人 32 位汇编看得懂,一转到 64 位就卡住,问题往往就出在这些细节上。

这门课瞄准的正是这个断层。它不从头教你「什么是寄存器」,而是假定你已经有一点汇编底子,直接讲 x64 相对 x86 变了什么、为什么要这么变、在 Windows 环境下怎么用。学完之后,你至少能独立看懂一段 64 位汇编代码在做什么,能判断函数参数从哪来、返回值放到哪去。

学完能独立做什么

  • 在 Visual Studio 里搭起 64 位汇编的编写与调试环境,能自己写、自己跑、自己下断点看寄存器
  • 看懂 x64 下的函数调用过程,理清寄存器传参的顺序和栈空间的使用
  • 在汇编代码里调用外部函数,处理跨模块调用时的地址问题
  • 定位全局变量在汇编层面的位置,理解它和模块基址之间的关系

这几项能力放在一起,基本覆盖了逆向和底层调试中最常遇到的场景。需要说清楚的是,课程讲的是「看懂和会用」,不是让你从零手写一个完整的内核模块。如果你的目标是独立开发驱动,这只是其中一块拼图。

资料适合什么基础

这门课不适合零基础。如果你完全没接触过汇编,不知道通用寄存器、栈、指针是什么,直接进来会很痛苦,建议先把 32 位汇编的基本概念过一遍再回来。

比较合适的是这几类人:写过一点 C/C++,能看懂指针和内存布局;或者接触过 32 位汇编、做过简单的逆向练习,但在 64 位程序面前总是差一口气;再或者在做游戏安全相关的事情,发现自己卡在底层读不懂。有这些前提,课程里的例子你才能跟得上手。

另外,学习过程中需要你实际动手。汇编这东西看会了不等于会写,环境搭起来、代码敲一遍、断点跟一遍,效果差很多。只听课不动手,收获会打不少折扣。

给你的使用建议

别把资料从头到尾平铺着看。建议先抓「x64 新增寄存器」和「64 位传参规则」这两块,它们是后面所有内容的地基——传参搞不清,调用外部函数和定位全局变量都会变成背结论。这两块弄明白之后,再进入 VS 环境实操,边写边验证前面学到的规则。

遇到和 32 位不一样的地方,不妨刻意停下来对比一下:为什么这里改了、不改会出什么问题。带着这种对比去看,比单纯记结论要扎实得多。整门课的价值不在于记住多少条规则,而在于你之后面对一段陌生的 64 位汇编时,知道自己该从哪里切入去看。

课程目录

课程目录5 集
  • 01 01.寄存器.mp4
  • 02 02.VS集成64位汇编环境.mp4
  • 03 03.传参.mp4
  • 04 04.汇编里面调用外部函数.mp4
  • 05 05.全局变量定位.mp4