为你推荐
内容简介
前 言
第1部分 预备知识
第1章 十六进制计数法
1.1 二进制计数法回顾
1.2 十六进制计数法
1.3 使用Windows 计算器方便你的学习过程
本章习题
第2章 处理器、内存和指令
2.1 最早的处理器
2.2 寄存器和算术逻辑部件
2.3 内 存 储 器
2.4 指令和指令集
2.5 古老的Intel 8086 处理器
本章习题
第3章 汇编语言和汇编软件
3.1 汇编语言简介
3.2 NASM 编译器
本章习题
第4章 虚拟机的安装和使用
4.1 计算机的启动过程
4.2 创建和使用虚拟机
第2部分 实模式
第5章 编写主引导扇区代码
5.1 本章代码清单
5.2 欢迎来到主引导扇区
5.3 注 释
5.4 在屏幕上显示文字
5.5 显示标号的汇编地址
5.6 使程序进入无限循环状态
5.7 完成并编译主引导扇区代码
5.8 加载和运行主引导扇区代码
5.9 程序的调试技术
本章习题
第6章 相同的功能,不同的代码
6.1 代码清单6-1
6.2 跳过非指令的数据区
6.3 在数据声明中使用字面值
6.4 段地址的初始化
6.5 段之间的批量数据传送
6.6 使用循环分解数位
6.7 计算机中的负数
6.8 数位的显示
6.9 其他标志位和条件转移指令
6.10 NASM 编译器的$和$$标记
6.11 观察运行结果
6.12 本章程序的调试
本 章 习 题
第7章 比高斯更快的计算
7.1 从1 加到1.0 的故事
7.2 代码清单7-1
7.3 显示字符串
7.4 计算1 到100的累加和
7.5 累加和各个数位的分解与显示
7.6 程序的编译和运行
7.7 8086处理器的寻址方式
本 章 习 题
第8章 硬盘和显卡的访问与控制
8.1 本章代码清单
8.2 用户程序的结构
8.3 加载程序(器)的工作流程
8.4 用户程序的工作流程
8.5 编译和运行程序并观察结果
本章习题
第9章 中断和动态时钟显示
9.1 外部硬件中断
9.2 内 部 中 断
9.3 软 中 断
本 章 习 题
第3部分 32位保护模式
第10章 32 位x86 处理器编程架构
10.1 IA-32 架构的基本执行环境
10.2 现代处理器的结构和特点
10.3 32 位模式的指令系统
本 章 习 题
第11章 进入保护模式
11.1 代码清单11-1
11.2 全局描述符表
11.3 存储器的段描述符
11.4 安装存储器的段描述符并加载GDTR
11.5 关于第21 条地址线A20 的问题
11.6 保护模式下的内存访问
11.7 清空流水线并串行化处理器
11.8 保护模式下的栈
11.9 程序的运行和调试
本章习题
第12章 存储器的保护
12.1 代码清单12-1
12.2 进入32 位保护模式
12.3 修改段寄存器时的保护
12.4 地址变换时的保护
12.5 使用别名访问代码段对字符排序
12.6 程序的编译和运行
本章习题
第13章 程序的动态加载和执行
13.1 本章代码清单
13.2 内核的结构、功能和加载
13.3 在内核中执行
13.4 用户程序的加载和重定位
13.5 执行用户程序
13.6 代码的编译、运行和调试
本章习题
第14章 任务和特权级保护
14.1 任务的隔离和特权级保护
14.2 代码清单14-1
14.3 内核程序的初始化
14.4 加载用户程序并创建任务
14.5 用户程序的执行
本章习题
第15章 任务切换
15.1 本章代码清单
15.2 任务切换前的设置
15.3 任务切换的方法
15.4 用call/jmp/iret 指令发起任务切换的实例
15.5 处理器在实施任务切换时的操作
15.6 程序的编译和运行
本章习题
第16章 分页机制和动态页面分配
16.1 分页机制概述
16.2 本章代码清单
16.3 使内核在分页机制下工作
16.4 创建内核任务
16.5 用户任务的创建和切换
16.6 程序的编译、执行和调试
本 章 习 题
第17章 中断和异常的处理与抢占式多任务
17.1 中断和异常
17.2 本章代码清单
17.3 内核的加载和初始化
17.4 内核任务的创建
17.5 用户任务的创建
17.6 程序的编译和执行
本章习题
附录Ⅰ 本书用到的x86指令及其页码
附录Ⅱ 本书用到的重要图表及其页码
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜