主板:打算机各个硬件插槽的载体。打算机各个部件通过主板上的插槽和总线与CPU连接。
接口卡:从程序的角度理解,主板上的各种插槽便是打算机各个硬件的接口地址。打算机系统有两套各自独立的地址。硬件的接口地址独立于1M主存的线性地址,每个接口都有预定的端口地址。我们将在第十六章输入和输出中断中详细讲解。

各种存储芯片:RAM、ROM、显存、BIOS。RAM称为动态随机存储器,用于动态读写数据,断电后数据丢失。ROM称为静态存储器,保存BIOS和各种驱动程序,断电后不会消逝,ROM只能读不能写。显存比较分外,既有RAM也有ROM存储。显存的RAM用于显示数据,显存的ROM存储显卡驱动。BIOS为系统勾引程序。
内存地址空间:8086打算机内存地址空间划分为主存、显存和各种ROM三个部分,共同构成1M大小的线性地址空间。
1.6.1 主板主板上有CPU和一些紧张器件,这些器件通过总线(地址总线、数据总线和掌握总线)与CPU相连。这些器件有存储器、外围芯片组、扩展插槽等。扩展插槽用来将外部硬件设备连接到主板。
1.6.2 接口卡打算机系统中,所有可以利用程序掌握的设备都必须受到CPU掌握,如显示器、音箱、打印机等。CPU对外部设备不能直接掌握。须要通过插在扩展插槽上的接口卡来掌握。扩展插槽通过总线和CPU相连,以是接口卡也通过总线同CPU相连。CPU可以直接掌握这些接口卡,从而实现对外部设备的掌握。
每一个接口卡都有一个设定的端口地址,CPU通过掌握总线向接口卡的端口地址发送掌握命令,接口卡根据CPU的掌握命令进行事情。
1.6.3 各种存储芯片如图1-22所示,PC机中装有多个独立的存储芯片,属于不同的部件。从属性可以划分:
随机存储器(RAM):用于存放供CPU利用的绝大部分程序和数据,主随机存储器一样平常由两个位置上的RAM组成,装在主板上的RAM和插在扩展插槽上的RAM(内存条)。
静态存储器ROM:存放BIOS基本输入输出程序,是由主板和各种接口卡(如显卡、网卡等)厂商供应的软件系统,可以通过它利用该硬件设备进行最基本的输入输出。例如主板上的ROM中存储系统BIOS,显卡的ROM中存储显卡的BIOS,网卡上装有ROM存储网卡的BIOS。
接口卡上的RAM:某些接口卡须要对大批量输入和输出数据进行暂时存储,装有RAM。最范例的是显卡上的RAM,称为显存。我们将要显示的内容写入显存,显卡将显存中的数据向显示器输出,就会涌如今屏幕上。
BIOS:基本输入输出程序、开机自检系统和自启动程序。
CMOS芯片是主板上的BIOS芯片中一块可读写的RAM芯片,紧张用来保存当前系统的硬件配置和操作职员对某些参数的设定。CMOS RAM芯片由系统通过主板上的一块圆形后备电池供电,因此在关机状态后信息也不会丢失。
图1-22 PC机各种存储器
1.6.4 内存地址空间各种存储器都和CPU相连。
CPU对它们进行读或写的时候都通过掌握线发出内存读写命令。
8086打算机将各种存储器全部当作内存来对待,把它们总的看作一个由多少存储单元组成的逻辑存储器,这个逻辑存储器称为内存地址空间。
把稳
回顾上一节的内容—地址空间:
如果CPU的地址总线宽度为10,可以编写210个内存地址编号,即可以寻到1024个字节内存单元称为该CPU的内存地址空间。
8086打算机有20根地址线,其寻址范围为220个字节,即1MB。
80386打算机有32根地址线,其寻址范围为232个字节,即4GB。
X64打算机有64根地址线,其寻址范围为264个字节。
CPU将系统中各种存储器看作一个逻辑存储器。所有的物理存储器被看作一个由多少存储单元组成的逻辑存储器,每个物理存储器占用一个地址段,即一段地址空间。CPU在这段地址空间读写数据,便是在相对应的物理存储器中读写数据。
举例
假设内存地址空间的地址段分配如下:
地址0~7FFFH的32KB空间为主存储空间;
地址8000H~9FFFH的8KB空间为显存;
地址A000H~FFFFH的 24KB空间为其他ROM存储器地址空间;
CPU向地址1000H内存单元写入数据,数据就被写入主随机存储器中;
CPU向地址8000H内存单元写入数据,数据被写入显存,涌如今显示器上。
CPU向C000H内存单元写入数据这样的操作无效,由于C000H是ROM只读存储器单元。
图1-23 PC机内存地址空间分布
图1-23 展示了PC机中各种存储器的内存地址空间分配情形。这些存储器将作为一个整体与打算机的寻址范围相对应。
1.6.5 8086 PC机内存地址空间分配内存地址空间的大小受地址总线宽度的限定。8086CPU
地址总线为20根,可以定位220个内存单元,地址范
围0~220-1,地址空间大小1MB。
80386CPU的地址总线宽度为32,则内存地址空间为
4GB。
基于一个打算机硬件系统编程的时候,必须知道这个
打算机系统的内存地址空间的分配情形。向某类存储
器读写数据时,须要知道它的第一个单元地址和末了
一个单元地址。
8086CPU的地址分配如图1-24:
图1-24 8086PC机内存地址空间分配
●0~9FFFF的内存单元为主随机存储器。
●A0000~BFFFF的内存单元为显存。
●C0000~FFFFF内存单元为只读存储器。
本文摘自编程达人系列教材《X86汇编措辞根本教程》!







