您的位置:首页 > 其它

基础知识05 - 零基础入门学习汇编语言05

2010-10-28 17:41 926 查看

第一章:基础知识05

让编程改变世界

Change the world by program

内存地址空间(概述)

什么是内存地址空间呢?

一个CPU的地址线宽度为10,那么可以寻址1024个内存单元,这1024个可寻到的内存单元就构成这个CPU的内存地址空间。下面深入讨论。

首先需要介绍两部分基本知识,主板和接口卡。

主板

在每一台PC机中,都有一个主板,主板上有核心器件和一些主要器件。

这些器件通过总线(地址总线、数据总线、控制总线)相连。

接口卡

计算机系统中,所有可用程序控制其工作的设备,必须受到CPU的控制。

CPU对外部设备不能直接控制,如显示器、音箱、打印机等。直接控制这些设备进行工作的是插在扩展插槽上的接口卡。

各类存储器芯片

从读写属性上看分为两类:

随机存储器(RAM)和只读存储器(ROM)

从功能和连接上分类:

随机存储器RAM

接口卡上的RAM

装有BIOS的ROM

BIOS:Basic Input/Output System,基本输入输出系统。

BIOS 是由主板和各类接口卡(如:显卡、网卡等)厂商提供的软件系统,可以通过它利用该硬件设备进行最基本的输入输出。在主板和某些接口卡上插有存储相应 BIOS 的 ROM。

[caption id="attachment_241" align="aligncenter" width="300"]

PC机中各类存储器的逻辑连接情况[/caption]

内存地址空间

上述的那些存储器在物理上是独立的器件。

但是它们在以下两点上相同:

1、都和CPU的总线相连。

2、CPU对它们进行读或写的时候都通过控制线发出内存读写命令。

将各各类存储器看作一个逻辑存储器:

[caption id="attachment_240" align="aligncenter" width="300"]

将各各类存储器看作一个逻辑存储器[/caption]

假设,上图中的内存空间地址段分配如下:

地址0~7FFFH的32KB空间为主随机存储器的地址空间;

地址8000H~9FFFH的8KB空间为显存地址空间;

地址A000H~FFFFH的24KB空间为各个ROM的地址空间。

所有的物理存储器被看作一个由若干存储单元组成的逻辑存储器;

每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间;

CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据。

不同的计算机系统的内存地址空间分配情况是不同的。

8086PC机的内存地址空间分配

[caption id="attachment_242" align="aligncenter" width="164"]

8086PC机的内存地址空间分配[/caption]

最终运行程序的是CPU,我们用汇编编程的时候,必须要从CPU角度考虑问题。

(我们学习这门课程的核心思维)

对CPU来讲,系统中的所有存储器中的存储单元都处于一个统一的逻辑存储器中,它的容量受CPU寻址能力的限制。这个逻辑存储器即是我们所说的内存地址空间。

[buy] 获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://kuai.xunlei.com/d/LZQIUGEZZCQT']视频下载[/Downlink]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: