x86汇编语言:从实模式到保护模式(第2版)

x86汇编语言:从实模式到保护模式(第2版)

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

学习汇编语言,掌握计算机原理

内容简介

每一种处理器都有它自己的机器指令集,而汇编语言的发明则是为了方便这些机器指令的记忆和书写。尽管汇编语言已经较少用于大型软件程序的开发,但从学习者的角度来看,要想真正理解计算机的工作原理,掌握它内部的运行机制,学习汇编语言是必不可少的。本书采用开源的NASM汇编语言编译器和VirtualBox虚拟机软件,以个人计算机广泛采用的Intel处理器为基础,详细讲解了Intel处理器的指令系统和工作模式。《x86汇编语言:从实模式到保护模式》第二版修改点:1,在书的前面添加基础性的内容,用来说明汇编语言的由来和必要性,说明汇编语言编程的特点,以期平滑自然地进入汇编语言主题。2,原书中对指令系统及x86指令格式的描述过于简略,此版增补这部分内容;3,读者普遍反映第14章太难太紧凑,此版将相关内容拆分,降低学习的难度;4,整个保护模式部分以现在的观点来看,内容组织不够合理,予以重新组织,配书代码重新编写和组织;5,原书中有模糊的错误的表述,此版予以更正。

章节目录

版权信息

第2版前言

第1版前言

第1部分 预备知识

第1章 十六进制计数法

1.1 二进制计数法回顾

1.2 十六进制计数法

1.3 使用Windows计算器方便你的学习过程

本章习题

第2章 计算机和汇编语言

2.1 用电表示数字

2.2 二进制加法机

2.3 具有记忆功能的器件——寄存器

2.4 带寄存器的加法机

2.5 能做四则运算的机器

2.6 机器指令

2.7 内 存

2.8 自动计算

2.9 处理器

2.10 汇编语言的诞生

本章习题

第3章 分段机制和逻辑地址

3.1 寄存器和字长

3.2 内存访问和字节序

3.3 古老的INTEL 8086处理器

本章习题

第4章 汇编语言和汇编软件

4.1 汇编语言程序

4.2 NASM编译器

4.3 配书文件包的下载和使用

本章习题

第2部分 实模式

第5章 虚拟机的安装和使用

5.1 计算机的启动过程

5.2 创建和使用虚拟机

第6章 编写主引导扇区代码

6.1 本章代码清单

6.2 欢迎来到主引导扇区

6.3 注释

6.4 在屏幕上显示文字

6.5 显示标号的汇编地址

6.6 使程序进入无限循环状态

6.7 完成并编译主引导扇区代码

6.8 加载和运行主引导扇区代码

6.9 程序的调试技术

本章习题

第7章 相同的功能,不同的代码

7.1 代码清单7-1

7.2 跳过非指令的数据区

7.3 在数据声明中使用字面值

7.4 段地址的初始化

7.5 段之间的批量数据传送

7.6 使用循环分解数位

7.7 计算机中的负数

7.8 数位的显示

7.9 其他标志位和条件转移指令

7.10 NASM编译器的$和$$标记

7.11 观察运行结果

7.12 本章程序的调试

本章习题

第8章 比高斯更快的计算

8.1 从1加到100的故事

8.2 代码清单8-1

8.3 显示字符串

8.4 计算1到100的累加和

8.5 累加和各个数位的分解与显示

8.6 程序的编译和运行

8.7 8086处理器的寻址方式

本章习题

第9章 硬盘和显卡的访问与控制

9.1 本章代码清单

9.2 用户程序的结构

9.3 加载程序(器)的工作流程

9.4 用户程序的工作流程

9.5 编译和运行程序并观察结果

本章习题

第3部分 保护模式

第10章 中断和动态时钟显示

10.1 外部硬件中断

10.2 内部中断

10.3 软中断

本章习题

第11章 32位x86处理器编程架构

11.1 IA-32架构的基本执行环境

11.2 现代处理器的结构和特点

11.3 32位处理器的寻址方式

第12章 进入保护模式

12.1 代码清单12-1

12.2 全局描述符表

12.3 存储器的段描述符

12.4 安装存储器的段描述符并加载GDTR

12.5 关于第21条地址线A20的问题

12.6 保护模式下的内存访问

12.7 程序的运行和调试

本章习题

第13章 操作数和有效地址的尺寸

13.1 代码清单13-1

13.2 INTEL 80286处理器的16位保护模式

13.3 指令的操作尺寸

13.4 清空流水线并串行化处理器

13.5 有效地址尺寸和内存访问

13.6 一般指令在32位操作尺寸下的扩展

本章习题

第14章 存储器的保护

14.1 代码清单14-1

14.2 进入32位保护模式

14.3 修改段寄存器时的保护

14.4 地址变换时的保护

14.5 使用别名访问代码段对字符排序

14.6 程序的编译和运行

本章习题

第15章 程序的动态加载和执行

15.1 本章代码清单

15.2 内核的结构、功能和加载

15.3 在内核中执行

15.4 用户程序的加载和重定位

15.5 执行用户程序

15.6 代码的编译、运行和调试

本章习题

第16章 任务和特权级保护

16.1 任务的隔离和特权级保护

16.2 代码清单16-1

16.3 内核程序的初始化

16.4 加载用户程序并创建任务

16.5 用户程序的执行

本章习题

第17章 协同式任务切换

17.1 本章代码清单

17.2 任务切换前的设置

17.3 任务切换的方法

17.4 用jmp指令发起任务切换的实例

17.5 处理器在实施任务切换时的操作

17.6 程序的编译和运行

本章习题

第18章 中断和异常的处理与抢占式多任务

18.1 中断和异常

18.2 本章代码清单

18.3 内核的加载和初始化

18.4 内核任务的创建

18.5 用户任务的创建和执行

18.6 程序的编译和执行

本章习题

第19章 分页机制和动态页面分配

19.1 分页机制概述

19.2 本章代码清单

19.3 使内核在分页机制下工作

19.4 创建内核任务

19.5 用户任务的创建和切换

19.6 程序的编译、执行和调试

本章习题

第20章 平坦内存模型和软件任务切换

20.1 多段模型和平坦模型

20.2 本章代码清单

20.3 初始化系统并加载内核

20.4 内核的初始化

20.5 用户任务的创建

20.6 软件任务切换

20.7 内核任务的执行

20.8 用户任务的执行

本章习题

x86汇编语言:从实模式到保护模式(第2版)是2023年由电子工业出版社出版,作者李忠。

得书感谢您对《x86汇编语言:从实模式到保护模式(第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Java从入门到精通(第4版) 电子书
本书以零基础讲解为宗旨,用实例引导读者学习,深入浅出地介绍了Java的相关知识和实战技巧。
JavaScript设计模式 电子书
html+css+javascript教程详解,JavaScript高级程序设计精粹。
从1.0到3.0:移动社群如何重构社交关系与商业模式 电子书
社群1.0时代,社群中主要是熟人交流为主,以图片、文字为主;社群2.0时代社群中不再是熟人,不再是朋友,而是越来越多的同兴趣的人沉淀在社群中,传统的好友关系延展到了非好友、兴趣类聚合中,但主要的沟通也是以聊天为主;社群3.0时代,社群以连接一切为目标,不仅聚合人,更连接信息、服务、内容和商品载体,最后连接一切。任何社交需求及行为最终都落实到人,平台、生态、工具只是辅助升级社群形态,任何需求或兴趣都
Java开发从入门到精通(第2版) 电子书
Java10全面解析:技术解惑与实例演练
C语言从入门到精通(第4版) 电子书
本书以零基础入门为宗旨,用范例引导读者学习,深入浅出地介绍了C语言的相关知识和实战技能。