文档介绍:第 1 章背景知识
让我们在轻松的背景知识介绍中开始 Win32 汇编之旅。本章将对 Win32 平台的历史和现
状做简要介绍,同时对 80386 处理器以及 Windows 操作系统中涉及 Win32 汇编的基础知识部
分做快速充电。
Win32 的软硬件平台
80x86 系列处理器简史
Win32 可以在多种硬件平台上运行,但使用最广泛的硬件平台是基于 Intel 公司 80x86 系
列处理器的微型计算机。
自 1978 年 6 月 Intel 公司推出它的第一个 16 位微处理器 8086 以来,计算机技术就开始
进入飞速发展的时期。8086 芯片的主频为 MHz,集成的晶体管数大约为 万个,运算
器的位长为 16 位,采用了 20 条地址线,可以寻址的范围为 220 个字节地址,即 1 MB;1982
年,该公司发布了 80286 处理器,芯片上集成了 12 万个晶体管,主频提高到了 12 MHz。
1985 年 Intel 公司推出 32 位的 80386 处理器,芯片上集成的晶体管数为 万个,主频
提高到了 33 MHz,地址线则扩展为 32 条,直接寻址的能力达到 4 GB。80386 处理器在设计
的时候考虑了多用户及多任务的需要,在芯片中增加了保护模式、优先级、任务切换和片内
的存储单元管理等硬件单元。80386 的出现使 Windows 和 UNIX 等多任务的操作系统可以在
PC 上运行。直到现在,运行于 80x86 处理器之上的多任务操作系统都是以 80386 的运行模式
为基础的。
1989 年,Intel 公司推出 80486 处理器,在芯片内集成了浮点处理器和 8 KB 的一级缓存,
片内的晶体管数达到了 118 万个,并把主频提高到 50 MHz~66 MHz。80486 处理器开始使
用流水线技术,即在 CPU 中由 5~6 个不同功能的电路单元组成一条指令处理流水线,然后
将一条指令分成 5~6 步后再由这些电路单元分别执行,由此提高 CPU 的运算速度。电路单
元的数目就是流水线的深度。为了使计算机中的其他部件不至于成为 CPU 速度发展的瓶颈,
80486 处理器开始使用了倍频技术,即让处理器速度(CPU 主频)数倍于系统总线速度(外
频)。
从 80386 开始,在 Intel 公司向市场大量推出处理器芯片的同时,其他一些电脑公司和厂
商如 AMD 和 Cyrix 等,也纷纷投入大量的人力财力进行处理器的开发和研制,并很快把研
制出的产品推向市场。这些 CPU 芯片和 80386 芯片兼容,在编程上可以使用和 Intel 处理器
相同的指令集。
1993 年 3 月 Intel 公司推出 80586 处理器。由于无法阻止其他公司把自己的兼容产品也
叫做 x86,所以把产品取名为 Pentium,并且进行了商标注册,同时启用了中文名称奔腾。
Pentium 芯片中集成了 310 万个晶体管,内置 16 KB 缓存,主频有 60 MHz 和 66 MHz 两个版
本,后来逐步提高,到 1995 年 6 月时主频提高到了 133 MHz。Pentium 处理器采用许多新技
术,其中最重要的变化是采用了超标量体系结构。即将两个同时工作的指令执行部件封装在
同一芯片中,用两条并行的通道来执行指令,这相当于两个 CPU 同时工作,大大提高了处理
速度。在 586 时代,AMD 和 Cyrix 等其他公司也推出了相应档次的 CPU,命名为 5x86 和
K5 等。
1995 年 11 月,Intel 公司推出代号为 P6 的新一代 Pentium Pro 处理器,中文名称为高
能奔腾。Pentium Pro 芯片中集成了 550 万个晶体管,主频分 150 MHz~200 MHz 多个版本。
片内集成了 3 条平行的指令执行通道,相当于 3 个 CPU 并行工作,并用超流水线技术将流水
线的深度提高到了 14 级。P6 处理器内置 16 KB 一级高速缓存,并将 256 KB 或 512 KB 的二
级高速缓存芯片与 CPU 内核芯片同时封装在一个外壳中,缩短了 CPU 和二级高速缓存之间
的线路走线距离。同时,P6 处理器开始使用乱序执行和分支预测技术,这使下一条指令不一
定要等到前一条指令执行完毕后才可以开始。所有这些技术使这种 CPU 在运行 32 位指令系
统时的执行效率明显高于上一代 Pentium。
随着 CPU 和操作系统的发展,多媒体技术开始流行,表明依靠浮点处理器已经不能满足
多媒体音频和视频信号的实时处理任务了。199