获取资料

X86汇编语言深入解析 从实模式到保护模式 汇编保护模式程序设计实战

X86汇编语言深入解析 从实模式到保护模式 汇编保护模式程序设计实战

课程介绍

本课程为X86汇编语言的深入学习课程,全面覆盖了从8086实模式到32位保护模式的编程过程。课程从基础的汇编语言知识讲起,逐步深入到计算机内部运作机制,包括计算机负数表示、指令集解析、硬件访问控制等核心内容。通过详细讲解X86处理器的寻址方式、内存管理、任务切换以及保护模式程序的动态加载,学员将掌握如何编写高效、安全的低级程序。同时,课程还涉及多任务处理、特权级保护以及中断异常处理等高级话题,确保学员在学习过程中能够理解并实践现代操作系统的核心概念。此课程特别适合对系统底层编程有兴趣的学员,帮助你深入了解计算机硬件与操作系统的核心原理,并提升编程能力。

课程目录

(1)\1 课程说明;目录中文件数:1个

课程说明.mp4

(2)\10 循环 批量传送和条件转移;目录中文件数:8个

1 跳过非指令的数据区.mp4

2 逻辑段地址的重新设定.mp4

3 串传送指令和标志寄存器.mp4

4 NASM的$和$$记号.mp4

5 使用循环指令LOOP分解数位.mp4

6 基址寻址和INC指令.mp4

7 数字的显示和DEC指令.mp4

8 基址变址寻址和条件转移指令.mp4

(3)\11 计算机中的负数;目录中文件数:4个

1 无符号数和有符号数.mp4

2 减法指令SUB和求补指令NEG.mp4

3 计算机如何区分对待无符号数和有符号数.mp4

4 有符号数除法指令IDIV.mp4

(4)\12 阶段性知识总结和拓展;目录中文件数:3个

1 阶段性重点内容总结.mp4

2 8086的标志寄存器.mp4

3 条件转移指令和CMP指令.mp4

(5)\13 从1加到100并显示结果;目录中文件数:5个

1 字符串的定义和累加过程.mp4

3 栈在数位分解和显示中的应用.mp4

4 在调试器里观察栈操作的状态.mp4

5 进一步认识栈和栈操作的特点.mp4

6 逻辑或指令OR和逻辑与指令AND.mp4

(6)\14 INTEL8086处理器的寻址方式;目录中文件数:4个

1 寄存器 立即数和直接寻址.mp4

2 基址寻址.mp4

3 变址寻址.mp4

4 基址变址寻址.mp4

(7)\15 硬盘和显卡的访问与控制;目录中文件数:26个

1 离开主引导扇区.mp4

10 过程和过程调用.mp4

11 过程调用和返回的原理.mp4

12 加载整个用户程序.mp4

13 用户程序的重定位.mp4

14 比特位的移动指令.mp4

15 转到用户程序内部执行.mp4

16 8086的无条件转移指令.mp4

17 用户程序的执行过程.mp4

18 验证加载器加载和执行用户程序的过程.mp4

19 书中第八章用户程序概述.mp4

2 给汇编语言程序分段.mp4

20 与文本显示有关的回车 换行与光标控制.mp4

21 回车的光标处理和乘法指令MUL.mp4

22 换行和普通字符的处理过程与滚屏操作.mp4

23 8086的过程调用方式.mp4

24 通过RETF指令转到另一个代码段内执行.mp4

25 在程序中访问不同的数据段.mp4

26 使用新版FixVhdWr写虚拟硬盘并运行程序.mp4

3 控制段内元素的汇编地址.mp4

4 加载器和用户程序头部段.mp4

5 加载器的工作流程和常数声明.mp4

6 确定用户程序的加载位置.mp4

7 外围设备及其接口.mp4

8 输入输出端口的访问.mp4

9 通过硬盘控制器端口读扇区数据.mp4

(8)\16 中断和动态时钟显示;目录中文件数:15个

1 中断和硬件中断.mp4

10 用NOT指令反转时间分隔符的颜色.mp4

11 使用IRET指令从中断过程返回.mp4

12 用停机指令HLT使处理器进入低功耗状态.mp4

13 内部中断和软中断.mp4

14 BIOS中断概述.mp4

15 使用BIOS功能调用接收并显示键盘输入.mp4

2 中断控制器简介.mp4

3 中断号 中断处理过程和中断向量表.mp4

4 实时时钟 CMOSRAM和BCD编码.mp4

5 实时时钟芯片的中断信号.mp4

6 安装0x70号中断处理过程.mp4

7 启用更新周期结束中断.mp4

8 用TEST指令等待更新周期结束.mp4

9 读取BCD码的时间并在屏幕上显示.mp4

(9)\17 32位x86处理器编程架构;目录中文件数:9个

1 IA-32架构和保护模式.mp4

2 寄存器的扩展和扩充.mp4

3 32位处理器的内存访问概况.mp4

4 32位处理器的寻址方式概况..mp4

5 流水线技术.mp4

6 高速缓存技术.mp4

7 乱序执行技术.mp4

8 寄存器重命名技术.mp4

9 分支目标预测技术..mp4

(10)\18 进入保护模式;目录中文件数:12个

1 保护模式是要保护什么.mp4

10 通过设置寄存器CR0的PE位进入保护模式.mp4

11 描述符高速缓存器和保护模式下的内存访问.mp4

12 在调试器中观察实模式和保护模式的内存访问.mp4

2 全局描述符表GDT和全局描述符表寄存器GDTR.mp4

3 准备创建全局描述符表.mp4

4 描述符的分类.mp4

5 存储器的段描述符-段的类型和基地址.mp4

6 存储器的段描述符-段界限及访问控制位.mp4

7 安装存储器的段描述符.mp4

8 加载全局描述符表寄存器GDTR.mp4

9 开启处理器的第21根地址线A20.mp4

(11)\19 指令的格式及其操作尺寸;目录中文件数:11个

1 80286的16位保护模式.mp4

10 描述符和段描述符高速缓存器的D位.mp4

11 进入保护模式后立即切换到32位模块并使用32位默认操作尺寸.mp4

2 16位处理器的指令操作尺寸.mp4

3 32位处理器的指令操作尺寸.mp4

4 x86的指令格式-操作码和立即数部分.mp4

5 x86的指令格式-ModRM和偏移量部分.mp4

6 x86的指令格式-SIB部分.mp4

7 x86的指令格式-指令前缀部分.mp4

8 处理器的默认操作尺寸和相关指令前缀.mp4

9 用伪指令bits生成16位和32位模块.mp4

(12)\2 汇编语言的前世今生;目录中文件数:11个

1 引子.mp4

10 处理器.mp4

11 汇编语言的诞生.mp4

2 用电来表示数字.mp4

3 二进制加法机.mp4

4 具有记忆功能的器件-寄存器.mp4

5 带寄存器的加法机.mp4

6 能做四则运算的机器.mp4

7 机器指令.mp4

8 内存.mp4

9 自动计算.mp4

(13)\20 存储器的保护;目录中文件数:13个

1 话说MOVDS,AX和MOVDS,EAX.mp4

10 通过别名来实现段的共用和共享.mp4

11 冒泡排序法的基本原理.mp4

12 32位操作尺寸下的LOOP指令.mp4

13 数据交换指令XCHG.mp4

2 修改段寄存器时的保护.mp4

3 代码段执行时的保护.mp4

4 用向上扩展的段做为栈段.mp4

5 向上扩展的段用做栈段时的保护.mp4

6 访问普通数据段时的保护.mp4

7 内存线性地址的回绕特性.mp4

8 用向下扩展的段做为栈段.mp4

9 向下扩展的段用做栈段时的保护.mp4

(14)\21 保护模式程序的动态加载和执行;目录中文件数:20个

1 本章的目标和内容提要.mp4

10 条件传送指令簇CMOVcc.mp4

11 计算以512字节为单位的用户程序总长度.mp4

12 内存分配的基本策略和方法.mp4

13 内存分配的简易实现过程.mp4

14 加载用户程序.mp4

15 准备安装用户程序的段描述符.mp4

16 用SGDT和MOVZX指令确定GDT的位置.mp4

17 安装新描述符并生成选择子.mp4

18 安装用户程序的段描述符并回填选择子.mp4

19 用户程序的执行和退出.mp4

2 内核的结构和加载前的准备工作.mp4

20 在虚拟机上观察内核的加载以及用户程序的执行与退出.mp4

3 准备为内核的每个段创建和安装描述符.mp4

4 段描述符的创建和BSWAP指令.mp4

5 进入内核执行.mp4

6 进入内核后显示文本信息.mp4

7 用CPUID指令取得处理器品牌信息并显示.mp4

8 准备加载用户程序.mp4

9 预读用户程序并得到它的大小.mp4

(15)\22 用户程序编程接口及其实现;目录中文件数:11个

1 内核与用户程序之间的栈切换问题.mp4

10 在虚拟机上验证程序的执行.mp4

11 以十六进制形式显示一个双字以及PUSHAD POPAD和XLAT.mp4

2 在内核中为用户程序提供编程支持.mp4

3 用户程序中的符号地址检索表.mp4

4 内核程序中的符号地址检索表.mp4

5 串比较指令CMPS.mp4

6 串比较的方向和重复前缀.mp4

7 使用外循环依次取得用户SALT表的每个条目.mp4

8 使用内循环依次取得内核SALT表的每个条目并进行比较.mp4

9 在用户程序内使用内核编程接口读硬盘和显示文本.mp4

(16)\23 任务和任务的创建;目录中文件数:13个

1 任务概念和组成.mp4

10 TSS描述符的格式和TSS描述符的创建.mp4

11 用带参数的RET指令返回调用者.mp4

12 加载任务寄存器TR和局部描述符表寄存器LDTR.mp4

13 在虚拟机上验证任务的执行.mp4

2 使用任务控制块保存任务基本信息.mp4

3 将任务控制块加入任务控制块链表.mp4

4 通过栈传递例程参数以及立即数的压栈指令.mp4

5 段寄存器的压栈和出栈以及栈的随机访问机制.mp4

6 创建任务的局部描述符表LDT.mp4

7 在当前任务的LDT中安装描述符.mp4

8 LDT描述符的格式和LDT描述符的创建.mp4

后续省略上百条目录

评论0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址