王爽汇编语言第二版(全部)_第1页
王爽汇编语言第二版(全部)_第2页
王爽汇编语言第二版(全部)_第3页
王爽汇编语言第二版(全部)_第4页
王爽汇编语言第二版(全部)_第5页
已阅读5页,还剩1285页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章基础知识,1.1机器语言1。9数据总线1.2汇编语言生成1.10控制总线1.3汇编语言组成1.11内存地址空间(概述)1.4内存1.12主板1.5指令和数据1.13接口卡1.6内存单元1.14各种内存芯片1.7中央处理器读写内存1.15内存地址为空1.8地址总线,简介,汇编语言是一种直接在硬件上工作的编程语言。首先,我们必须了解硬件系统的结构,然后才能用汇编语言对其进行有效的编程。在本章中,对部分硬件系统结构进行了讨论,以便在良好的基础上开展以下课程。介绍,当课程需要增加新的基础知识(关于编程结构或其他)时,再介绍和讨论相关的基础知识。这本书的原则是将来使用的知识将在以后讨论。绪论,组装

2、课程的研究重点是如何利用硬件系统的编程结构和指令集有效灵活地工作。1.1机器语言,它是一组机器指令。机器指令扩展是机器可以正确执行的命令。1.1机器语言,指令:01010000 (push ax)电平脉冲:1.1机器语言,我们后面提到的计算机是指由中央处理器和其他由中央处理器直接或间接控制的芯片、装置和设备组成的计算机系统;例如,我们最常见的个人电脑。1.1机器语言,程序员将0和1的程序代码数字编程在纸带或卡片上播放,1打孔,0不打孔,然后将程序通过纸带机或卡片机输入计算机进行操作。该示例使用8086中央处理器来完成操作:s=768 12288 1280,1.1机器语言,s=768 12288

3、-1280机器代码:10110000000000000011 0000000000110000000000000000010000000000100000000000000100000000100000000000000000000000000000000000000000当你看到这样的节目时,你有什么感觉?如果程序中的“1”被错误地写为“0”,如何找到它?1.2汇编语言的产生,汇编语言的主体是汇编指令。汇编指令和机器指令的区别在于指令的表示。汇编指令是一种方便的机器指令编写格式。汇编指令是机器指令的助记符。1.2汇编语言生成,机器指令:1000100111011000操作:寄存器bx的内容被

4、发送到ax。汇编指令的书写:bx mov ax接近人类语言,易于阅读和记忆。寄存器:简单地说,它是一个可以在中央处理器中存储数据的设备。中央处理器中有许多寄存器。ax是其中一个寄存器的代码,bx是另一个寄存器的代码。我们将在以后的课程中讨论更多细节。随着汇编语言的出现,只有机器指令才能被计算机理解,那么计算机如何执行程序员用汇编指令编写的程序呢?用汇编语言编程的工作过程,1.3汇编语言的组成,汇编语言由以下三类组成:1。汇编指令(机器代码的助记符)2。伪指令(由编译器执行)3。汇编语言的核心是汇编指令,它决定了汇编语言的特性。内存、中央处理器是计算机的核心部件,它控制着整个计算机的运行并执行操

5、作。如果你想让一个中央处理器工作,你必须给它提供指令和数据。指令和数据存储在内存中,通常称为内存。1.4内存,电脑内存的功能仅次于中央处理器。没有内存,即使最好的中央处理器也无法工作。1.4内存,磁盘不同于内存,如果磁盘上的数据或程序没有被读入内存,则不能被中央处理器使用。1.5指令和数据,它们是应用概念。在内存或磁盘中,指令和数据没有区别,它们都是二进制信息。1.5指令和数据,二进制信息:1000100111011000 89d8h(数据)1000100111011000 mov ax,bx(程序),1.6个存储单元,将存储器分成若干存储单元,每个存储单元从0开始依次编号;例如,一个内存有1

6、28个存储单元,从0127开始编号。如图所示:1.6存储单元,对于大容量存储器,通常使用以下单元来测量容量(以下,b代表字节):1kb=1024 b 1mb=1024 kb 1gb=1024 mb 1tb=1024 gb。磁盘的容量单位与内存的容量单位相同。事实上,上述单位是微型计算机中常用的测量单位。1.7中央处理器对内存的读写,如果中央处理器要读写数据,它必须与外部设备(标准说法是芯片)进行三种信息的交互:存储单元地址(地址信息)设备选择,读或写命令(控制信息),读或写数据(数据信息),1.7中央处理器对内存的读写,那么中央处理器如何将地址、数据和控制信息传输到内存芯片?电子计算机能够处理

7、和传输的信息都是电信号,当然必须通过电线传输。1.7中央处理器读写内存,计算机中有连接中央处理器和其他芯片的特殊线路,通常称为总线。物理上:电线的集合;逻辑上分为:地址总线、数据总线、控制总线图、1.7中央处理器读写存储器、总线逻辑划分图:1.7中央处理器读写存储器、中央处理器读写存储器的数据演示:读写演示从上面我们知道中央处理器如何读写数据。但是我们如何命令计算机读写数据呢?对于8086cpu,以下机器代码可以从单元3读取数据:机器代码:101000000000000110000000000含义:从单元3读取数据到寄存器ax cpu将在接收到该机器代码后完成上述读写工作1.7 cpu读写内存

8、,这是机器代码很难记住的。情况如下:机器码:10100000000000011000000000对应的汇编指令:mov ax,3含义:将单元3的内容转移到ax,1.8地址总线,通过该总线cpu指定存储单元。由于地址总线上可以传输许多不同的信息,所以中央处理器可以寻址尽可能多的存储单元。1.8地址总线,地址总线发送地址信息演示,1.8地址总线,1.8地址总线,如果一个中央处理器有n条地址总线,可以说这个中央处理器的地址总线的宽度是n。这样一个中央处理器最多可以寻找n个功率存储单元。1.9数据总线,中央处理器和存储器或其他设备之间的数据传输是通过数据总线进行的。数据总线的宽度决定了中央处理器和外界

9、之间的数据传输速度。1.9数据总线,让我们来看看当他们把数据写入存储器时,他们是如何通过数据总线传输数据的。对于89d8h: 8088cpu数据总线数据传输情况8086cpu数据总线数据传输情况,1.9数据总线,在8位数据总线上传输的信息,1.9数据总线,在16位数据总线上传输的信息,1.10控制总线,中央处理器对外部设备的控制。这里,控制总线是一个通用术语,它是不同控制线的集合。控制总线的数量意味着中央处理器为外部设备提供多种控制。因此,控制总线的宽度决定了中央处理器控制外部设备的能力。在控制总线、1.10控制总线、1.10控制总线上发送的控制信息,上述存储器读或写命令是由多条控制线综合发出

10、的:其中一条称为读信号输出控制线,负责将中央处理器发出的读信号发送出去,中央处理器向控制线输出一个低电平,表示要读取的数据;有一个称为写信号输出控制线,它负责从中央处理器传输写信号。第1.1节,第1.10节,(1)装配指令是机器指令的助记符,它们与机器指令一一对应。(2)每个中央处理器都有自己的汇编指令集。第1.1节,第1.10节,(3)中央处理器可以直接使用的信息存储在内存中。(4)内存中的指令和数据没有区别,它们都是二进制信息。,第1.1节,第1.10节,(5)存储单元从零开始按顺序编号。(6)一个存储单元可以存储8位(以“b”为单位),即8位二进制数。(7)1b=8b1kb=1024 b

11、 1mb=1024 kb 1gb=1024 mb,1.1节和1.10节概述(续),(8)每个中央处理器芯片都有许多与总线相连的引脚。也可以说,这些引脚引出总线。一个中央处理器可以引出的三种总线宽度从不同的方面表明了这个中央处理器的性能:地址总线的宽度决定了中央处理器的寻址能力;当中央处理器与其他设备传输数据时,数据总线的宽度决定了一次传输的数据量。控制总线的宽度决定了中央处理器控制系统中其他设备的能力。第1.1节,第1.10节总结(续),在组装过程中,我们从功能的角度介绍了这三种类型的总线,并没有讨论实际的连接情况。特别注意,特别注意,检查点1.1(第8页)未能通过检查点,请不要往下学习!1.

12、11内存地址空间(概述),什么是内存地址空间?如果中央处理器的地址线宽度是10,1024个存储单元可以被寻址,并且这1024个存储单元构成中央处理器的存储地址空间。下面将对此进行深入讨论。首先,我们需要介绍两个基本知识,主板和接口卡。1.12主板,在每台电脑中,都有一个带有核心设备和一些主要设备的主板。这些设备通过总线(地址总线、数据总线和控制总线)连接。1.13接口卡,在计算机系统中,其工作可由程序控制的所有设备必须由中央处理器控制。中央处理器不能直接控制外部设备,如显示器、扬声器、打印机等。插入扩展槽的接口卡直接控制这些设备的工作。1.14各种存储芯片按读写属性可分为两种类型:按功能和连接

13、分类的随机存取存储器(ram)和只读存储器(rom):pc中各种存储器的带基本输入输出系统逻辑连接的rom接口卡上的ram,1.14各种存储芯片,带基本输入输出系统的rom bios:基本输入输出系统。bios是由主板和各种接口卡(如显卡、网卡等)提供的软件系统。),通过它硬件设备可以用于最基本的输入和输出。在主板和一些接口卡上插入用于存储相应的基本输入输出系统的只读存储器。1.15内存地址空间,以及上面提到的那些内存都是物理上独立的设备。但它们在以下两点上是相同的:1 .它们都与中央处理器的总线相连。2.当中央处理器读或写它们时,它通过控制线发出存储器读和写命令。1.15存储器地址空间,所有

14、类型的存储器都被视为逻辑存储器:所有物理存储器都被视为由若干存储单元组成的逻辑存储器;每个物理存储器在这个逻辑存储器中占据一个地址段,即一个地址空间;当中央处理器在这个地址空间中读写数据时,它实际上是在相应的物理内存中读写数据。1.15存储器地址空间,假设上图中的存储器空间地址段分配如下:地址07fffh的32kb空间是主随机存取存储器的地址空间;地址8000h9fffh的8kb空间是存储器地址空间;地址000的24kb空间是每个只读存储器的地址空间。1.15内存地址空间,不同的计算机系统有不同的内存地址空间分配。8086pc机内存地址空间分配的基本情况,8086pc机内存地址空间分配,1.1

15、5内存地址空间,内存地址空间:cpu是最后一个运行程序的。当我们使用汇编编程时,我们必须从中央处理器的角度考虑这个问题。就中央处理器而言,系统中的所有存储单元都在一个统一的逻辑存储器中,其容量受到中央处理器寻址能力的限制。这个逻辑内存就是我们所说的内存地址空间。摘要,汇编语言课件,王爽编写,清华大学出版社,制作工具:微软powerpoint2003,本课件由汇编网络()制作并提供,第二章注册表(cpu工作原理), 2.1通用寄存器2.2寄存器中的字的存储2.3若干汇编指令2.4物理地址2.5 16位结构的中央处理器2.6由8086中央处理器给出物理地址的方法2.7“段地址16偏移地址=物理地址

16、”的基本含义2.8段概念2.9段寄存器2.10 cs和ip 2.12代码段,中央处理器概述,典型的中央处理器由算术单元、控制器、寄存器和其他设备组成内部总线实现中央处理器中各种设备之间的连接。 外部总线实现了中央处理器和主板上其他设备之间的连接。8086中央处理器有14个寄存器,它们的名字是ax,bx,cx,dx,si,di,sp,bp,ip,cs,ss,ds,es和psw。这些寄存器将在未来陆续推出。2.1通用寄存器,8086中央处理器的所有寄存器都是16位,可以容纳两个字节。ax、bx、cx和dx通常用于存储通用数据,这些数据称为通用寄存器。以ax为例,让我们看看寄存器的逻辑结构。16位寄

17、存器可以存储16位数据。16位寄存器可以存储的最大数据值是多少?回答:216-1。2.1通用寄存器,在寄存器中存储16位数据,数据:18二进制表示:10010在寄存器ax中存储,16位数据在寄存器中存储,数据:20000二进制表示:01001100000在寄存器ax中存储:2.1通用寄存器,8086上一代中央处理器为确保兼容性,这四个寄存器可分为两个独立的8位寄存器。斧头可以分为ah和al;bx可以分为波黑和波黑;cx可分为中国和加拿大;dx可分为dh和dl。8086中央处理器的8位寄存器存储逻辑和2.1通用寄存器。以ax为例,8086cpu的16位寄存器分为两个8位寄存器:2.1通用寄存器。ax的低8位(0位和7位)构成自动增益控制寄存器,高8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论