美文网首页
第一章 汇编语言的基础知识下(内容采摘于书籍)

第一章 汇编语言的基础知识下(内容采摘于书籍)

作者: 项辉henry | 来源:发表于2020-03-12 16:35 被阅读0次

1.8地址总线

现在我们知道,CPU是通过地址总线来指定存储单元的。可见地址总线能传输多少个不同的信息,CPU就可以对多少个存储单元进行寻址。

如果一个CPU10根地址总线,那么它的寻址能力2的10次方。我们知道在电子计算机中,一根导线可以传送的稳定状态只有俩种,高电平或者低电平。用二进制表示就是1和0,10根导线可以传送10位二进制数据。根据排列组合原理,总共可以组合成2^10个不同的数据。最小数为0,最大数为1023

下图展示了一个具有10根地址线的CPU向内存发出地址信息11时10根地址线上传送的二进制信息。考虑一下,如果访问12、13、14呢?地址总线上传送的内容又是什么?

1.9数据总线

CPU与内存或者其他器件之间的数据传递是通过数据总线传递的。数据总线的宽度决定了CPU和外界的数据传递速度。8根数据总线一次可传递一个8位二进制数据(即一个字节)。16根数据总线一次可以传递俩个字符。

8086CPU有16根数据线,可以一次性传送16位数据,所以可以一次性传递89D8H;8088CPU只有8根数据总线,需要俩次才能够传递完整的89D8H。

1.10控制总线

CPU对外部器件的控制是通过控制总线来进行的。这里控制总线是个总称,控制总线是一些不同控制线的集合。有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。所以,控制总线的宽度决定了CPU对外部器件的控制能力。

前面所讲的内存读写命令是由几根控制线综合发出的。其中有一根被称为读信号输出的控制线负责由CPU向外发出的信号,CPU向该控制线上面输出低电平表示将要读取数据。有一根被称为写信号的输出控制线则负责传递写信号

检测点1.1

习题解析

(1)1个CPU的寻址能力为8KB,那么它的地址总线的宽度为 13位。
(2)1KB的存储器有 1024 个存储单元,存储单元的编号从 0 到 1023 。

(3)1KB的存储器可以存储 8192(2^13) 个bit, 1024个Byte。

(4)1GB是 1073741824 (2^30) 个Byte、1MB是 1048576(2^20) 个Byte、1KB是 1024(2^10)个Byte。

(5)8080、8088、80296、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能力分别为: 64 (KB)、 1 (MB)、 16 (MB)、 4 (GB)。

(6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为: 1 (B)、 1 (B)、 2 (B)、 2 (B)、 4 (B)。

(7)从内存中读取1024字节的数据,8086至少要读 512 次,80386至少要读 256 次。

(8)在存储器中,数据和程序以 二进制 形式存放。

1.11内存地址空间(概述)

什么是内存地址空间呢?举例来说,一个CPU的地址总线宽度为10,那么可以寻址1024个内存单元,这1024个可寻找的内存单元就构成这个CPU的内存地址空间,下面进行深入的讨论。首先介绍俩部分基础知识:主板和接口卡

1.12主板

在每一台PC机中,都有一个主板,主板上有核心器件和一些主要的器件,这些器件通过总线(地址总线、数据总线、控制总线)相连。这些器件有CPU、存储器、外围芯片组、扩展插槽等、扩展插槽上一般插有RAM内存条和各类接口卡。

1.13接口卡

计算机系统中,所有由程序控制的设备,必须受到CPU的控制。CPU对某些外部设备例如:显示器、音箱、打印机等,不能够直接控制。直接控制这些外部设备的是接口卡,接口卡插在扩展插槽中,CPU通过直接控制这些接口卡,从而实现对外部设备的间接控制。简单一点说:CPU通过总线向接口卡发送命令,接口卡根据CPU的命令控制外部设备进行工作。

1.14各类存储器芯片

一台PC机中,装有多个存储器芯片,这些存储器芯片从物理连接上看是相互独立的、不同的器件。从读写属性上看分为俩类:随机存储器(RAM)和只读存储器(ROM)。随机存储器可读可写,但必须带电储存,关机后储存的内容丢失;只读存储器只能读取不能写入,关机后其中的内容不丢失,这些存储器从功能和连接上又可分为以下几类:

随机存储器

用于存放CPU使用的绝大部分程序和数据,主随机存储器一般由俩个位置上的RAM组成,装在主板上RAM和插在插槽上的RAM。

随机存储器装有BIOS(Basic Input/Output SSystem)的ROM

BIOS是由主板和各类接口卡厂商提供的软件系统,可以通过BIOS系统的ROM。例如,主板上的ROM中存储着主板的BIOS(通常成为系统BIOS);显卡上的ROM中存储着显卡的BIOS;如果网卡装有ROM,那其中就可以存储网卡的BIOS

接口卡上的RAM

某些接口卡需要对大批量输入、输出数据进行暂时存储,在其中装有RAM。最典型的就是显卡上的RAM,一般称为显存。显卡随时将显存中的数据向显示器上输出。换句话说,我们将需要显示的内容写入显存,就会出现在显示器上。


1.15内存地址和空间

上述的那些存储器,在物理上是独立的器件,但是在以下俩点相同。

  • 都和CPU的总线相连
  • CPU对它进行读写的时候都通过控制线发出内存读写命令
    下图展示了CPU如何控制各类存储器的情况:


在图1.8中,所有的物理存储器被看做是一个由若干存储单元组成的逻辑存储器,每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间。CPU在这段地址空间中读写数据,实际上就是在相对应的物理存储器中读写数据。

假设图1.8中的内存地址空间分配如下。
地址0~7FFFH的32KB空间为主随机存储器的地址空间。
地址8000H-9FFFH的8KB空间为显存地址空间。
地址A000H-FFFFH的24KB空间为各个ROM地址空间。

这样CPU向内存地址为1000H的内存单元中写入数据,这个数据就被写入主随机存储器中;CPU向内存地址为8000H的内存单元中写入数据,这个数据就被写入显存中,然后会被显卡输出到显示器上面;CPU向内存地址为C000H的内存单元写入数据操作是没有结果的,C000H单元中的内容不会被改变,C000H单元实际上就是ROM存储器中的一个单元。

内存地址空间的大小受CPU地址总线宽度的限制。8086CPU的地址总线宽度为20,它可以传送220次方个不同的地址信息。即可以定义220次方个内存单元,则8086CPU的内存地址空间大小为1MB。同理,80386CPU的地址总线宽度为32,则内存地址空间最大为4GB。

我们在基于一个计算机硬件系统编程的时候,必须了解这个计算机的内存地址空间的分配情况。因为当我们想在某类存储器中读写数据的时候,必须知道它的第一个单元的地址和最好一个单元的地址,才能保证读写操作是在预期的存储器中进行。比如我们希望向显示器输出一段信息,那么必须将这段信息储存到显存中,显卡才能将它输出到显示器上。要向显存中写入数据,必须要知道显存在内存地址空间中的地址。

不同的计算机系统的内存地址空间的分配情况是不同的。图1.9展示了8086CPU机内存地址空间分配的基本情况。

图1.9告诉我们,地址0-9FFFF的内存单元中读取数据,实际上就是在读取主随机存储器中的数据;地址A0000-BFFFF的内存单元中读取数据,实际上就是在读取显存中的数据;地址C0000-FFFFF的内存单元中写入数据的操作是无效的。


在下一章节中,喵星人老师会带领大家学习寄存器的相关知识,感谢大家的浏览!

相关文章

  • 第一章 汇编语言的基础知识下(内容采摘于书籍)

    1.8地址总线 现在我们知道,CPU是通过地址总线来指定存储单元的。可见地址总线能传输多少个不同的信息,CPU就可...

  • 第一章 汇编语言的基础知识上(内容采摘于书籍)

    1.1机器语言 第一代计算机语言为 机器语言 。那什么是机器语言呢?通俗一点的说法就是计算机能够读懂的语言,如下图...

  • hehe

    王爽汇编全书知识点大纲 第一章 基础知识 机器语言 汇编语言的产生 汇编语言的组成 存储器 cpu对存储器的读写 ...

  • 《汇编语言(王爽)》读书笔记

    最近在读王爽版的《汇编语言》,把需要记录的内容记录在这里。 第一章 基础知识 编译器:将汇编指令转换成机器指令的翻...

  • 《汇编语言》笔记

    笔记《汇编语言》 作者:王爽 第一章 基础知识 1.1 机器语言 什么是机器语言? 机器语言是机器指令的集合 什么...

  • <<汇编语言>>第1章笔记

    第一章 基础知识 汇编语言基本概念 汇编指令是机器指令便于记忆的书写格式,通过编译器把汇编指令对应到机器指令,汇编...

  • 初学汇编语言之基础知识整理

    和机器语言一样,汇编语言属于低级语言,所以学习汇编语言就要求学习者能够掌握机器内部的运算细节,为此特做一下基础知识...

  • 汇编语言(第3版)王爽

    一、基础知识 mov ax,bx把BX内容送到AX中。汇编语言有3类指令,汇编指令、伪指令,其他符号。CPU通过地...

  • 《《汇编语言(第3版) 》王爽著》 分享下载

    书籍信息 书名: 《汇编语言(第3版) 》王爽著 标签: 《汇编语言(第3版) 》王爽著,免费,程序员书籍,编程,...

  • 汇编语言

    基础知识: 汇编语言的主体是汇编指令,它决定了汇编语言特性 程序员用汇编语言写出源程序,再用汇编编译器将其编译成机...

网友评论

      本文标题:第一章 汇编语言的基础知识下(内容采摘于书籍)

      本文链接:https://www.haomeiwen.com/subject/cyfmjhtx.html