x86汇编语言:从实模式到保护模式
图书信息
| 作者 | 李忠,王晓波,等 |
| 出版社 | 电子工业出版社 |
| ISBN | 9787121187995 |
| 出版时间 | 2013-01-01 |
| 字数 | 34.9万 |
| 分类 | 电子工业出版社,科技,计算机,网络,程序设计 |
读书简介
每一种处理器都有它自己的机器指令集,而汇编语言的发明则是为了方便这些机器指令的记忆和书写。尽管汇编语言已经较少用于大型软件程序的发,但从学习者的角度来看,要想真正理解计算机的工作原理,掌握它内部的运行机制,学习汇编语言是必不可少的。本书采用源的NASM汇编语言编译器和VirtualBox虚拟机软件,以个人计算机广泛采用的Intel处理器为基础,详细讲解了Intel处理器的指令系统和工作模式,以大量的代码演示了16/32/64位软件的发方法,介绍了处理器的16位实模式和32位保护模式,以及基本的指令系统。
目录
内容简介
前 言
第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指令及其页码
附录Ⅱ 本书用到的重要图表及其页码
- 高考英语历年真题核心高频688词汇(合肥新东方高考英语教研中心)
- 姚明(1)(读书堂)
- 永无止尽的狂热:三岛由纪夫(杨照)
- 《新东方英语》中学生2014年12月号(《新东方英语》编辑部)
- 第11集 趋势定位:如何从消费市场往创业市场和资本市场转型(此商品为视频课程)(周导)
- 侯大利刑侦笔记8:旧案寻踪(集侦查学、痕迹学、社会学、尸体解剖学、犯罪心理学的教科书式破案小说)(读客知识小说文库)(小桥老树)
- 简单易学的基金投资(杨天南,孙振曦,贾泽亮 等)
- 交易圣经((澳)布伦特·奔富)
