资源简介
《x86汇编语言:从实模式到保护模式》主要讲述INTEL x86处理器的16位实模式、32位保护模式,至于虚拟8086模式,则是为了兼容传统的8086程序,现在看来已经完全过时,不再进行讲述。《x86汇编语言:从实模式到保护模式》的特色之一是提供了大量典型的源代码,这些代码以及相配套的工具程序可以到书中指定的网站,或者电子工业出版社华信教育资源网搜索下载。
每一种处理器都有它自己的机器指令集,而汇编语言的发明则是为了方便这些机器指令的记忆和书写。尽管汇编语言已经较少用于大型软件程序的开发,但从学习者的角度来看,要想真正理解计算机的工作原理,掌握它内部的运行机制,学习汇编语言是必不可少的。本书采用开源的NASM汇编语言编译器和VirtualBox虚拟机软件,以个人计算机广泛采用的Intel处理器为基础,详细讲解了Intel处理器的指令系统和工作模式,以大量的代码演示了16/32/64位软件的开发方法,介绍了处理器的16位实模式和32位保护模式,以及基本的指令系统。这是一本有趣的书,它没有把篇幅花在计算一些枯燥的数学题上。相反,它教你如何直接控制硬件,在不借助于BIOS、DOS、Windows、Linux或者任何其他软件支持的情况下来显示字符、读取硬盘数据、控制其他硬件等。本书可作为大专院校相关专业学生和计算机编程爱好者的教程。
资源目录
——/计算机教程/10网易云课堂/046-x86汇编语言:从实模式到保护模式/ ├──{01}--课程说明 | └──[1.1]--课程说明.mp4 51.62M ├──{02}--汇编语言的前世今生 | ├──[2.10]--处理器.mp4 19.65M | ├──[2.11]--汇编语言的诞生.mp4 20.71M | ├──[2.1]--引子.mp4 7.19M | ├──[2.2]--用电来表示数字.mp4 10.88M | ├──[2.3]--二进制加法机.mp4 8.86M | ├──[2.4]--具有记忆功能的器件——寄存器.mp4 13.06M | ├──[2.5]--带寄存器的加法机.mp4 8.44M | ├──[2.6]--能做四则运算的机器.mp4 13.09M | ├──[2.7]--机器指令.mp4 43.36M | ├──[2.8]--内存.mp4 40.06M | └──[2.9]--自动计算.mp4 30.04M ├──{03}--认识8086处理器 | ├──[3.1]--8086的通用寄存器.mp4 23.15M | ├──[3.2]--8086的内存访问和字节序.mp4 12.85M | ├──[3.3]--程序的分段.mp4 11.24M | ├──[3.4]--程序的重定位难题.mp4 14.17M | ├──[3.5]--段地址和偏移地址.mp4 13.09M | ├──[3.6]--8086内存访问的困境.mp4 8.19M | ├──[3.7]--8086选择段地址的策略.mp4 21.66M | ├──[3.8]--8086的内存访问过程.mp4 13.82M | └──[3.9]--逻辑地址和分段的灵活性.mp4 25.43M ├──{04}--原书第1版第2章检测点和习题解析 | └──[4.1]--原书第1版第2章检测点和习题解析.mp4 22.29M ├──{05}--汇编语言和汇编软件 | ├──[5.1]--创建汇编语言源程序.mp4 23.11M | ├──[5.2]--Notepad++的下载和使用.mp4 23.37M | ├──[5.3]--下载和安装编译器NASM.mp4 17.45M | ├──[5.4]--编译汇编语言源程序.mp4 32.23M | ├──[5.5]--下载和使用配套源码及工具.mp4 50.67M | └──[5.6]--将编译功能集成到Notepad++.mp4 18.63M ├──{06}--原书第1版第3章检测点和习题解析 | └──[6.1]--原书第1版第3章检测点和习题解析.mp4 13.70M ├──{07}--如何执行编译好的程序 | ├──[7.1]--8086加电或者复位时的状态.mp4 24.52M | ├──[7.2]--8086地址空间的分配.mp4 32.36M | ├──[7.3]--跳转指令.mp4 16.69M | ├──[7.4]--硬盘的构造和工作原理.mp4 23.18M | └──[7.5]--一切从主引导扇区开始.mp4 22.70M ├──{08}--虚拟机的安装和使用 | ├──[8.1]--安装VirtualBox虚拟机管理器.mp4 31.70M | ├──[8.2]--创建VirtualBox虚拟机.mp4 96.91M | ├──[8.3]--虚拟硬盘简介.mp4 44.27M | ├──[8.4]--在Windows下创建虚拟硬盘并安装操作系统.mp4 78.68M | └──[8.5]--在Linux下创建虚拟硬盘并安装操作系统.mp4 21.98M ├──{09}--汇编语言程序的调试 | ├──[9.1]--带调试功能的虚拟机.mp4 11.29M | ├──[9.2]--安装Bochs虚拟机.mp4 35.99M | ├──[9.3]--为Bochs虚拟机安装虚拟硬盘.mp4 22.23M | ├──[9.4]--创建主引导扇区程序.mp4 33.29M | ├──[9.5]--将程序写入硬盘主引导扇区.mp4 68.72M | └──[9.6]--用调试器观察程序的执行.mp4 132.84M ├──{10}--原书第1版第4章检测点和习题解析 | └──[10.1]--原书第1版第4章检测点和习题解析.mp4 7.86M ├──{11}--在屏幕上显示文本 | ├──[11.10]--在VirtualBox中运行写屏程序.mp4 28.35M | ├──[11.11]--主引导扇区执行时的内存布局.mp4 43.54M | ├──[11.12]--使用标号计算跳转的偏移地址.mp4 31.37M | ├──[11.13]--使用寄存器的绝对间接近跳转.mp4 32.43M | ├──[11.14]--使用相对偏移量的短跳转和近跳转.mp4 49.92M | ├──[11.1]--显卡和显存.mp4 37.67M | ├──[11.2]--准备访问文本模式下的显存.mp4 22.99M | ├──[11.3]--字符的编码和显示属性.mp4 37.42M | ├──[11.4]--文本模式下的显存操作.mp4 25.97M | ├──[11.5]--MOV指令的形式和机器码.mp4 64.09M | ├──[11.6]--列表文件的创建和使用.mp4 42.44M | ├──[11.7]--在汇编程序中使用标号.mp4 26.68M | ├──[11.8]--段间直接绝对跳转指令.mp4 21.28M | └──[11.9]--在Bochs中运行和调试写屏程序.mp4 130.04M ├──{12}--在屏幕上显示数字 | ├──[12.1]--显示数字的基本原理.mp4 23.05M | ├──[12.2]--无符号数除法指令div.mp4 47.80M | ├──[12.3]--在调试器里验证除法操作.mp4 20.87M | ├──[12.4]--异或指令xor的用法.mp4 60.69M | ├──[12.5]--加法指令add的用法.mp4 30.20M | ├──[12.6]--使用标号访问内存数据.mp4 23.46M | ├──[12.7]--段超越前缀的使用.mp4 41.56M | └──[12.8]--显示标号的汇编地址.mp4 42.12M ├──{13}--阶段性重点内容总结 | ├──[13.1]--阶段性重点内容总结.mp4 40.49M | └──[13.2]--原书第1版第5章检测点和习题解析.mp4 49.95M ├──{14}--循环、批量传送和条件转移 | ├──[14.1]--跳过非指令的数据区.mp4 14.68M | ├──[14.2]--逻辑段地址的重新设定.mp4 11.44M | ├──[14.3]--串传送指令和标志寄存器.mp4 26.08M | ├──[14.4]--NASM的$和$$记号.mp4 38.28M | ├──[14.5]--使用循环指令LOOP分解数位.mp4 18.10M | ├──[14.6]--基址寻址和INC指令.mp4 33.57M | ├──[14.7]--数字的显示和DEC指令.mp4 29.03M | └──[14.8]--基址变址寻址和条件转移指令.mp4 52.21M ├──{15}--计算机中的负数 | ├──[15.1]--无符号数和有符号数.mp4 43.77M | ├──[15.2]--减法指令SUB和求补指令NEG.mp4 62.16M | ├──[15.3]--计算机如何区分对待无符号数和有符号数.mp4 39.23M | ├──[15.4]--有符号数除法指令IDIV.mp4 57.27M | └──[15.5]--有符号数的符号扩展指令.mp4 66.40M ├──{16}--阶段性知识总结和拓展 | ├──[16.1]--8086的标志寄存器.mp4 41.81M | ├──[16.2]--条件转移指令和CMP指令.mp4 53.99M | └──[16.3]--原书第1版第6章检测点和习题解析.mp4 52.59M ├──{17}--从1加到100并显示结果 | ├──[17.1]--字符串的定义和累加过程.mp4 29.77M | ├──[17.2]--栈的原理和使用.mp4 90.68M | ├──[17.3]--栈在数位分解和显示中的应用.mp4 23.34M | ├──[17.4]--在调试器里观察栈操作的状态.mp4 44.13M | ├──[17.5]--进一步认识栈和栈操作的特点.mp4 30.35M | └──[17.6]--逻辑或指令OR和逻辑与指令AND.mp4 71.25M ├──{18}--INTEL8086处理器的寻址方式 | ├──[18.1]--寄存器、立即数和直接寻址.mp4 35.08M | ├──[18.2]--基址寻址.mp4 61.43M | ├──[18.3]--变址寻址.mp4 43.94M | ├──[18.4]--基址变址寻址.mp4 39.89M | └──[18.5]--原书第1版第7章检测点和习题解析.mp4 14.37M ├──{19}--硬盘和显卡的访问与控制 | ├──[19.10]--过程和过程调用.mp4 42.31M | ├──[19.11]--过程调用和返回的原理.mp4 26.04M | ├──[19.12]--加载整个用户程序.mp4 25.53M | ├──[19.13]--用户程序的重定位.mp4 23.44M | ├──[19.14]--比特位的移动指令.mp4 67.20M | ├──[19.15]--转到用户程序内部执行.mp4 13.82M | ├──[19.16]--8086的无条件转移指令.mp4 67.38M | ├──[19.17]--用户程序的执行过程.mp4 40.98M | ├──[19.18]--验证加载器加载和执行用户程序的过程.mp4 48.20M | ├──[19.19]--书中第八章用户程序概述.mp4 23.16M | ├──[19.1]--离开主引导扇区.mp4 16.55M | ├──[19.20]--与文本显示有关的回车、换行与光标控制.mp4 45.52M | ├──[19.21]--回车的光标处理和乘法指令MUL.mp4 82.50M | ├──[19.22]--换行和普通字符的处理过程与滚屏操作.mp4 47.48M | ├──[19.23]--8086的过程调用方式.mp4 48.45M | ├──[19.24]--通过RETF指令转到另一个代码段内执行.mp4 31.66M | ├──[19.25]--在程序中访问不同的数据段.mp4 19.51M | ├──[19.26]--使用新版FixVhdWr写虚拟硬盘并运行程序.mp4 61.09M | ├──[19.27]--原书第一版第8章习题解析解答.mp4 27.65M | ├──[19.2]--给汇编语言程序分段.mp4 30.32M | ├──[19.3]--控制段内元素的汇编地址.mp4 24.19M | ├──[19.4]--加载器和用户程序头部段.mp4 36.90M | ├──[19.5]--加载器的工作流程和常数声明.mp4 21.87M | ├──[19.6]--确定用户程序的加载位置.mp4 38.09M | ├──[19.7]--外围设备及其接口.mp4 20.49M | ├──[19.8]--输入输出端口的访问.mp4 33.64M | └──[19.9]--通过硬盘控制器端口读扇区数据.mp4 51.80M ├──{20}--中断和动态时钟显示 | ├──[20.10]--用NOT指令反转时间分隔符的颜色.mp4 18.33M | ├──[20.11]--使用IRET指令从中断过程返回.mp4 10.94M | ├──[20.12]--用停机指令HLT使处理器进入低功耗状态.mp4 46.79M | ├──[20.13]--内部中断和软中断.mp4 31.83M | ├──[20.14]--BIOS中断概述.mp4 62.75M | ├──[20.15]--使用BIOS功能调用接收并显示键盘输入.mp4 40.31M | ├──[20.16]--原书第9章检测点和习题解析.mp4 13.46M | ├──[20.1]--中断和硬件中断.mp4 15.32M | ├──[20.2]--中断控制器简介.mp4 17.53M | ├──[20.3]--中断号、中断处理过程和中断向量表.mp4 44.68M | ├──[20.4]--实时时钟、CMOSRAM和BCD编码.mp4 33.50M | ├──[20.5]--实时时钟芯片的中断信号.mp4 49.02M | ├──[20.6]--安装0x70号中断处理过程.mp4 41.34M | ├──[20.7]--启用更新周期结束中断.mp4 33.22M | ├──[20.8]--用TEST指令等待更新周期结束.mp4 35.73M | └──[20.9]--读取BCD码的时间并在屏幕上显示.mp4 37.20M ├──{21}--32位x86处理器编程架构 | ├──[21.1]--IA-32架构和保护模式.mp4 41.24M | ├──[21.2]--寄存器的扩展和扩充.mp4 24.35M | ├──[21.3]--32位处理器的内存访问概况.mp4 27.96M | ├──[21.4]--32位处理器的寻址方式概况.mp4 44.36M | ├──[21.5]--选修-流水线技术.mp4 14.74M | ├──[21.6]--选修-高速缓存技术.mp4 11.19M | ├──[21.7]--选修-乱序执行技术.mp4 28.93M | ├──[21.8]--选修-寄存器重命名技术.mp4 30.59M | └──[21.9]--选修-分支目标预测技术.mp4 24.48M ├──{22}--进入保护模式 | ├──[22.10]--通过设置寄存器CR0的PE位进入保护模式.mp4 31.83M | ├──[22.11]--描述符高速缓存器和保护模式下的内存访问.mp4 26.03M | ├──[22.12]--在调试器中观察实模式和保护模式的内存访问.mp4 69.90M | ├──[22.1]--保护模式是要保护什么.mp4 23.57M | ├──[22.2]--全局描述符表GDT和全局描述符表寄存器GDTR.mp4 15.34M | ├──[22.3]--准备创建全局描述符表.mp4 17.44M | ├──[22.4]--描述符的分类.mp4 14.86M | ├──[22.5]--存储器的段描述符-段的类型和基地址.mp4 16.01M | ├──[22.6]--存储器的段描述符-段界限及访问控制位.mp4 22.16M | ├──[22.7]--安装存储器的段描述符.mp4 18.14M | ├──[22.8]--加载全局描述符表寄存器GDTR.mp4 16.30M | └──[22.9]--开启处理器的第21根地址线A20.mp4 31.10M ├──{23}--指令的格式及其操作尺寸 | ├──[23.10]--描述符和段描述符高速缓存器的D位.mp4 32.81M | ├──[23.11]--进入保护模式后立即切换到32位模块并使用32位默认操作尺寸.mp4 49.68M | ├──[23.1]--80286的16位保护模式.mp4 20.84M | ├──[23.2]--16位处理器的指令操作尺寸.mp4 13.76M | ├──[23.3]--32位处理器的指令操作尺寸.mp4 46.61M | ├──[23.4]--x86的指令格式-操作码和立即数部分.mp4 55.22M | ├──[23.5]--x86的指令格式-ModRM和偏移量部分.mp4 91.61M | ├──[23.6]--x86的指令格式-SIB部分.mp4 47.93M | ├──[23.7]--x86的指令格式-指令前缀部分.mp4 7.14M | ├──[23.8]--处理器的默认操作尺寸和相关指令前缀.mp4 38.82M | └──[23.9]--用伪指令bits生成16位和32位模块.mp4 18.26M ├──{24}--存储器的保护 | ├──[24.10]--通过别名来实现段的共用和共享.mp4 34.56M | ├──[24.11]--冒泡排序法的基本原理.mp4 15.51M | ├──[24.12]--32位操作尺寸下的LOOP指令.mp4 15.98M | ├──[24.13]--数据交换指令XCHG.mp4 41.84M | ├──[24.1]--话说MOVDS,AX和MOVDS,EAX.mp4 46.38M | ├──[24.2]--修改段寄存器时的保护.mp4 18.12M | ├──[24.3]--代码段执行时的保护.mp4 16.23M | ├──[24.4]--用向上扩展的段做为栈段.mp4 23.08M | ├──[24.5]--向上扩展的段用做栈段时的保护.mp4 13.23M | ├──[24.6]--访问普通数据段时的保护.mp4 14.69M | ├──[24.7]--内存线性地址的回绕特性.mp4 20.26M | ├──[24.8]--用向下扩展的段做为栈段.mp4 21.71M | └──[24.9]--向下扩展的段用做栈段时的保护.mp4 23.70M ├──{25}--保护模式程序的动态加载和执行 | ├──[25.10]--条件传送指令簇CMOVcc.mp4 43.90M | ├──[25.11]--计算以512字节为单位的用户程序总长度.mp4 13.88M | ├──[25.12]--内存分配的基本策略和方法.mp4 25.86M | ├──[25.13]--内存分配的简易实现过程.mp4 19.69M | ├──[25.14]--加载用户程序.mp4 20.55M | ├──[25.15]--准备安装用户程序的段描述符.mp4 17.96M | ├──[25.16]--用SGDT和MOVZX指令确定GDT的位置.mp4 58.06M | ├──[25.17]--安装新描述符并生成选择子.mp4 13.82M | ├──[25.18]--安装用户程序的段描述符并回填选择子.mp4 20.55M | ├──[25.19]--用户程序的执行和退出.mp4 41.10M | ├──[25.1]--本章的目标和内容提要.mp4 15.64M | ├──[25.20]--在虚拟机上观察内核的加载以及用户程序的执行与退出.mp4 22.42M | ├──[25.2]--内核的结构和加载前的准备工作.mp4 63.18M | ├──[25.3]--准备为内核的每个段创建和安装描述符.mp4 32.07M | ├──[25.4]--段描述符的创建和BSWAP指令.mp4 34.51M | ├──[25.5]--进入内核执行.mp4 29.99M | ├──[25.6]--进入内核后显示文本信息.mp4 28.54M | ├──[25.7]--用CPUID指令取得处理器品牌信息并显示.mp4 45.79M | ├──[25.8]--准备加载用户程序.mp4 33.71M | └──[25.9]--预读用户程序并得到它的大小.mp4 16.49M ├──{26}--用户程序编程接口及其实现 | ├──[26.10]--在虚拟机上验证程序的执行.mp4 15.63M | ├──[26.11]--以十六进制形式显示一个双字以及PUSHAD、POPAD和XLAT.mp4 50.16M | ├──[26.1]--内核与用户程序之间的栈切换问题.mp4 27.99M | ├──[26.2]--在内核中为用户程序提供编程支持.mp4 23.61M | ├──[26.3]--用户程序中的符号地址检索表.mp4 32.32M | ├──[26.4]--内核程序中的符号地址检索表.mp4 29.46M | ├──[26.5]--串比较指令CMPS.mp4 27.03M | ├──[26.6]--串比较的方向和重复前缀.mp4 69.16M | ├──[26.7]--使用外循环依次取得用户SALT表的每个条目.mp4 15.13M | ├──[26.8]--使用内循环依次取得内核SALT表的每个条目并进行比较.mp4 20.49M | └──[26.9]--在用户程序内使用内核编程接口读硬盘和显示文本.mp4 26.83M ├──{27}--任务和任务的创建 | ├──[27.10]--TSS描述符的格式和TSS描述符的创建.mp4 12.95M | ├──[27.11]--用带参数的RET指令返回调用者.mp4 26.99M | ├──[27.12]--加载任务寄存器TR和局部描述符表寄存器LDTR.mp4 38.08M | ├──[27.13]--在虚拟机上验证任务的执行.mp4 48.88M | ├──[27.1]--任务:概念和组成.mp4 10.23M | ├──[27.2]--使用任务控制块保存任务基本信息.mp4 36.04M | ├──[27.3]--将任务控制块加入任务控制块链表.mp4 16.06M | ├──[27.4]--通过栈传递例程参数以及立即数的压栈指令.mp4 20.24M | ├──[27.5]--段寄存器的压栈和出栈以及栈的随机访问机制.mp4 17.83M | ├──[27.6]--创建任务的局部描述符表LDT.mp4 22.51M | ├──[27.7]--在当前任务的LDT中安装描述符.mp4 31.00M | ├──[27.8]--LDT描述符的格式和LDT描述符的创建.mp4 30.74M | └──[27.9]--创建任务状态段TSS.mp4 16.02M ├──{28}--特权级和特权级保护 | ├──[28.10]--一般情况下的请求特权级设置.mp4 18.59M | ├──[28.11]--为内核接口例程创建调用门.mp4 58.30M | ├──[28.12]--调用门的测试和调用门转移过程.mp4 33.76M | ├──[28.13]--通过调用门实施低特权级到高特权级的转移.mp4 37.51M | ├──[28.14]--通过调用门转移控制时的栈切换过程.mp4 16.69M | ├──[28.15]--通过调用门转移控制并返回的完整描述.mp4 26.95M | ├──[28.16]--创建0、1和2特权级的栈并登记在TSS中.mp4 32.65M | ├──[28.17]--通过模拟调用门返回进入用户程序执行.mp4 35.57M | ├──[28.1]--特权级保护的必要性和特权保护机制.mp4 26.83M | ├──[28.2]--当前特权级CPL.mp4 10.10M | ├──[28.3]--描述符特权级DPL.mp4 28.89M | ├──[28.4]--任务公共部分和私有部分的特权级划分.mp4 50.25M | ├──[28.5]--依从的代码段.mp4 8.74M | ├──[28.6]--门描述符和调用门.mp4 23.53M | ├──[28.7]--本章程序说明及特权级检查的时机.mp4 17.24M | ├──[28.8]--请求特权级RPL.mp4 25.02M | └──[28.9]--请求特权级调整指令ARPL.mp4 19.96M ├──{29}--协同式任务切换 | ├──[29.10]--通过JMPFAR执行任务切换的过程.mp4 27.62M | ├──[29.11]--内核任务与用户任务轮流执行的过程.mp4 47.30M | ├──[29.12]--任务的终止和清理.mp4 36.34M | ├──[29.1]--多任务和任务切换概述.mp4 25.85M | ├──[29.2]--内核任务的创建和I/O特权级IOPL.mp4 28.80M | ├──[29.3]--I/O特权级的修改和POPF指令.mp4 14.64M | ├──[29.4]--任务的用户态和内核态.mp4 17.10M | ├──[29.5]--I/O许可位串和TSS的I/O许可位映射区.mp4 24.51M | ├──[29.6]--任务切换的方法及内核任务的确立.mp4 33.28M | ├──[29.7]--用户任务的创建和初始化.mp4 58.42M | ├──[29.8]--简单的任务调度和切换策略.mp4 20.35M | └──[29.9]--遍历TCB链表寻找忙任务和就绪任务.mp4 25.50M ├──{30}--中断和异常的处理与抢占式多任务 | ├──[30.10]--中断和异常发生时的栈切换过程.mp4 30.89M | ├──[30.11]--在中断处理过程中实施任务切换(含NOP指令的介绍).mp4 62.43M | ├──[30.12]--抢占式多任务的执行效果演示.mp4 35.49M | ├──[30.1]--中断和异常概述.mp4 21.50M | ├──[30.2]--保护模式下中断和异常的向量分配.mp4 23.71M | ├──[30.3]--中断描述符表、中断门和陷阱门.mp4 29.79M | ├──[30.4]--本章程序介绍.mp4 56.64M | ├──[30.5]--创建并安装全部的256个中断门.mp4 47.84M | ├──[30.6]--为实时时钟中断创建和安装中断门.mp4 21.08M | ├──[30.7]--加载中断描述符表寄存器IDTR.mp4 14.26M | ├──[30.8]--重新设置8259A主片的中断向量.mp4 37.43M | └──[30.9]--中断和异常发生时的特权级检查.mp4 12.34M ├──{31}--分页和动态页面分配 | ├──[31.10]--设置控制寄存器CR3和CR0开启分页功能.mp4 13.40M | ├──[31.11]--在调试器中观察页目录表和页表.mp4 51.87M | ├──[31.12]--准备将内核映射到虚拟内存的高端.mp4 26.11M | ├──[31.13]--在分页机制下访问页目录表自身.mp4 20.23M | ├──[31.14]--使内核在虚拟内存高端的映射生效.mp4 28.68M | ├──[31.15]--为内核任务创建任务控制块TCB.mp4 32.55M | ├──[31.16]--为内核任务的TSS分配内存空间.mp4 30.63M | ├──[31.17]--处理与线性地址对应的页目录项和页表项.mp4 27.06M | ├──[31.18]--根据需要分配物理页并设置页表项.mp4 10.42M | ├──[31.19]--物理内存的页面管理和页映射位串.mp4 29.05M | ├──[31.1]--保护模式下的段式虚拟内存管理.mp4 27.08M | ├──[31.20]--空闲页的搜索和BTS指令.mp4 12.47M | ├──[31.21]--空闲页搜索和分配的具体过程.mp4 21.27M | ├──[31.22]--确立内核任务并开始创建用户任务.mp4 36.15M | ├──[31.23]--用户任务的内存分配策略.mp4 26.37M | ├──[31.24]--清空内核任务页目录表的前半部分并刷新TLB.mp4 27.57M | ├──[31.25]--为用户任务分配内存并创建LDT.mp4 21.21M | ├──[31.26]--用户程序的加载和重定位.mp4 38.74M | ├──[31.27]--用户任务页目录表的创建和访问以及INVLPG指令.mp4 43.95M | ├──[31.28]--第二个用户任务的创建和分页模式下的任务切换.mp4 32.05M | ├──[31.29]--分页模式下多任务切换的演示和调试.mp4 107.49M | ├──[31.2]--每个任务独立的虚拟内存.mp4 14.29M | ├──[31.3]--物理内存的分页以及段到页的拆分.mp4 20.83M | ├──[31.4]--处理器的段部件和页部件.mp4 20.87M | ├──[31.5]--从线性地址到物理地址的转换过程.mp4 21.29M | ├──[31.6]--页目录和页表及其地址转换过程.mp4 28.53M | ├──[31.7]--设计内核的页目录和页表.mp4 34.58M | ├──[31.8]--页目录项和页表项的组成格式.mp4 12.55M | └──[31.9]--创建内核的页表并初始化低端1MB对应的页表项.mp4 18.38M ├──{32}--平坦模型(大结局) | ├──[32.1]--为什么要引入平坦模型及平坦模型的特点.mp4 24.65M | ├──[32.2]--在主引导程序中创建平坦模型下的段.mp4 20.55M | ├──[32.3]--平坦模型对内核程序分段的影响.mp4 43.66M | ├──[32.4]--平坦模型对加载内核程序的影响.mp4 26.22M | ├──[32.5]--平坦模型下的内核初始化与内核任务的确立.mp4 47.66M | ├──[32.6]--平坦模型下的用户程序结构.mp4 37.86M | ├──[32.7]--平坦模型下的用户任务创建.mp4 13.00M | ├──[32.8]--在用户任务内动态分配内存.mp4 19.35M | └──[32.9]--平坦模型下的多任务切换演示与调试.mp4 14.79M ├──X86从实模式到保护模式 源代码.pdf 1.13M └──x86汇编语言-从实模式到保护模式.文字版.pdf 33.90M
多谢分享
多谢分享
多谢分享
学习一下 感谢分享~
感谢分享
感谢分享,看看X86的汇编。
感谢分享
学习一下
感谢分享
多谢分享,再看下汇编。
感谢分享,看看X86的汇编。
感谢分享
学习学习
谢谢
补一下计算机底层基础,谢谢!
学习一下
谢谢分享
感谢分享
感谢分享
补一下计算机底层基础,谢谢!
汇编也要学习哦。
学习
好像是操作系统的前导书籍的视频,感谢分享
感谢分享
感谢分享
感谢分享
学习学习
感谢分享
感谢分享
学习学习
汇编也要学习哦。
感谢分享
感谢分享
学习一下
感谢分享
看一下
谢谢,计算机基础很重要!
复习一下基础
讲的是第一版的书还是第二版的呀?
謝謝分享
謝謝分享
补一下计算机底层基础,谢谢!
谢谢
感谢分享
希望更多汇编资料
感谢分享
学习学习
看过书,确实很不错
多谢分享