电脑基础知识汇编基础课件_第1页
电脑基础知识汇编基础课件_第2页
电脑基础知识汇编基础课件_第3页
电脑基础知识汇编基础课件_第4页
电脑基础知识汇编基础课件_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

汇编语言程序设计汇编语言程序设计1课程介绍

汇编语言是计算机系统提供给用户的最快、最有效的语言,也是能对硬件直接编程的语言。因此,对空间和时间要求很高的程序,或需要直接控制硬件的程序,必须使用汇编语言进行程序设计。

课程介绍汇编语言是计算机系统提供给2教学内容

基础知识

介绍指令系统和寻址方式

伪操作和汇编语言程序格式汇编语言程序设计方法子程序设计方法

I/O和中断传递方式

BIOS、DOS功能调用与程序设计高级汇编技术教学内容基础知识3学习目标

通过学习本课程,了解Intel系列微型机的基本组成以及计算机中数和字符的表示方法;熟练掌握Intel8086指令系统及寻址方式,伪指令及汇编语言程序格式;掌握基本程序设计方法、I/O程序设计方法以及DOS和BIOS调用;掌握宏汇编的基本概念和方法;了解汇编语言程序与高级语言程序的连接方法,熟悉上机操作和程序调试技术,初步具备软件设计的能力。学习目标通过学习本课程,了解Int41基础知识一、计算机语言(1)机器语言。由0或1代码形成的语言。如,00000101—“加”。

机器语言具有以下特征:

1)是唯一的能被计算机识别并执行的语言。

2)是由0、1代码构成的语言,和自然语言相

差甚远,不便于阅读和理解。

3)是面向机器的语言(低级语言)1基础知识一、计算机语言51基础知识一、计算机语言(2)汇编语言。机器指令的符号形式。如,ADDAX,50—“加”。汇编指令:又称为符号指令,是机器指令符号化的表示。汇编语言:是由汇编指令、汇编伪指令及汇编语言的语法规则组成。汇编语言源程序:按照严格的语法规则用汇编语言编写的程序。也可简称为源程序。汇编程序:由于计算机不能直接识别和执行汇编语言源程序,因此需要把汇编语言源程序翻译成机器语言程序才可以由计算机执行。这个翻译的过程称为“汇编”,这种把汇编语言源程序翻译成目标程序的语言加工程序称为汇编程序。汇编程序将其翻译为机器语言后,才能交付计算机硬件系统加以识别和执行。汇编程序是为计算机配置的实现把汇编语言源程序翻译成目标程序的一种系统软件。1基础知识一、计算机语言61基础知识一、计算机语言(2)汇编语言。

汇编语言的特点:1)汇编语言与处理器密切相关。由于不同的处理器使用不同的汇编语言,所以汇编语言源程序与高级语言源程序相比,汇编语言程序的通用性、可移植性较差。但与机器语言相比,汇编语言易于理解和记忆,编写的源程序可读性强,源程序翻译成机器语言后的执行文件在存储空间、执行速度方面与机器语言编写的程序大致相当。2)汇编语言程序效率高。用汇编语言编写的源程序汇编后的目标程序短小精悍,运行效率高。其高效率反映在时间和空间两个方面:一是运行速度快;二是目标程序短。在采用相同算法的前提下,任何高级语言程序在时间和空间的效率都不如汇编语言程序。3)编写汇编语言源程序比编写高级语言源程序烦琐。汇编语言是面向机器的语言,高级语言是面向过程或面向目标、对象的语言。程序员在用汇编语言编写程序时,必须考虑包括寄存器、存储单元和寻址方式在内的几乎所有问题。在使用高级语言编写程序时,程序员不会考虑这些细节问题。4)调试汇编语言程序比调试高级语言程序困难。汇编语句指令的有限功能和程序员要注意太多的细节问题往往是造成调试困难的两个主要原因。1基础知识一、计算机语言71基础知识一、计算机语言(2)汇编语言。

汇编语言的主要应用场合是:1)程序执行占用较短的时间,或者占用较小存储容量的场合。如操作系统的核心程序段,实时控制系统的软件,智能仪器仪表的控制程序等。2)程序与计算机硬件密切相关,程序直接控制硬件的场合。如I/O接口电路的初始化程序段,外部设备的低层驱动程序等。3)需提高大型软件性能的场合。如计算机系统频繁调用的子程序等。4)没有合适的高级语言的场合。如开发最新的处理器程序时,暂时没有支持新指令的编译程序。1基础知识一、计算机语言81基础知识一、计算机语言(3)高级语言。接近自然的语言。如,数学语言。X=20+50高级语言具有以下特征:

1)更接近于自然语言,编程、阅读更容易。2)一个机器是否支持该高级语言与计算机的硬件系统无关。

3)生成的目标代码效率低(时空性能差)。只取决于有无相应的编译程序。注意:计算机能够直接执行的语言是机器语言。汇编语言与高级语言都必须借助编译软件,经过翻译之后,生成计算机可执行的代码(机器语言)才能够执行。1基础知识一、计算机语言91基础知识二、数制及运算

1.二进制数:由数字符号0、1构成,逢2进1,借1当2。例如:0、1、10、11、100、101、110、111。

练习计算:二进制加法。

1001+0011=?0101+1001=?

2.八进制数:由数字符号0~7构成,逢8进1,借1当8。例如:0、1、2、3、4、5、6、7、10、11、12。

练习计算:八进制加法。

06+07=?65+56=?1基础知识二、数制及运算101基础知识二、数制及运算

3.十六进制数:由数字符号0~9和字母A~F构成,逢16进1,借1当16。例如:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、10、11、12。

练习计算:十六进制加法。

0F+02=?89+56=?1基础知识二、数制及运算111基础知识二、数制及运算

4.不同进制数的转换(1)十进制数转换成二进制数(2)二进制数转换成十进制数。

是十进制数转换成二进制数的逆运算。(3)二进制数转换成十六进制数。

将二进制数从低位到高位,以4位为一组分割,然

后将4位的二进制数写成对应的十六进制数。(4)十六进制数转换成二进制数

是二进制数转换成十六进制数的逆运算。即将十六进制数按4位二进制数展开。1基础知识二、数制及运算121基础知识二、数制及运算

5.字符的表示:

计算机的输入/输出设备,一般都是以字符方式输入与输出,如,“a”、“A”,“1”、“2”。计算机以二进制编码的形式表示这些字符。ASCII码BCD码

1基础知识二、数制及运算131基础知识补码的运算:1

无符号数的运算2原码的表示方法3补码的表示方法4补码的运算5带符号数的范围6无符号数的范围

1基础知识补码的运算:141基础知识计算机中的常用名词术语

1.

记录数据或信息的最小单位——“位”。

(1)最简单的输入设备—开关。

(2)最简单的输出设备。灯(3)记录一位“0”或“1”的元件“触发器”。2.计算机内部记录一个位用“触发器”。3.8位称为一个字节,16位称为一个字。1基础知识计算机中的常用名词术语151基础知识三、微型计算机的结构

计算机系统由硬件系统(Hardware)和软件系统(Software)两部分组成。1.

硬件系统

计算机硬件系统由运算器、控制器、存储器、输入/输出设备五大部分组成。其中运算器和控制器构成中央处理器CPU(CentralProcessorUnit),中央处理器和存储器(Memory)构成主机。

微机的硬件系统由主机和外部设备构成。主机由微处理器(MicroProcessor)、存储器和输入/输出(I/O)接口三个部分组成,各部分由系统总线把它们连接在一起。1基础知识三、微型计算机的结构161基础知识三、微型计算机的结构(1)核心器件是CPU。(2)半导体存储器(RAM、ROM)、接口电路通过总线与CPU相连。(3)DB是数据总线,AB是地址总线,CB是控制总线。(4)外设通过接口与CPU相连接。2.

软件系统

微机的软件系统由系统软件和应用软件两大部分组成。1基础知识三、微型计算机的结构171基础知识8086/8088

CPU的内部结构

1.8086/8088CPU的组成

微型计算机的核心部件CPU从功能上讲由三部分构成:运算器、控制器和寄存器组。运算器完成算术运算和逻辑运算,控制器负责整个系统的协调,寄存器组临时存放数据。2.8088的通用寄存器组

寄存器是CPU内部临时存放数据的部件,它的存取速度远比内存快,可以把数据通过内部总线送往运算器进行运算,或者接受来自运算器的结果。因此充分利用CPU的内部寄存器可以加快程序的执行速度。1基础知识8086/8088CPU的内部结构181基础知识8086/8088

CPU的内部结构

8088的通用寄存器组包括:

(1)数据寄存器:数据寄存器包括AX、BX、CX和DX这4个16位的通

用寄存器。

(2)变址寄存器:包括SI、DI这两个16位的通用寄存器。

(3)指针寄存器包括BP、SP这两个16位的通用寄存器。3.控制寄存器IP和PSW这两个16位的寄存器。

1)IP(InstructionPoint)指令指针寄存器。用于存放下一条指令所在的

偏移地址。

2)PSW(ProgramStatusWord)程序状态字寄存器,又称为标志寄存器

(FR)。

8088使用其中的9位,用于存放当前程序执行的状况和运算结果的特征,根据功能,在8088中PSW使用的9位标志位可分为两组:一组为条件标志位(或称为状态标志位):CF、ZF、SF、OF、PF、AF这6个标志位。另一组是控制标志位:TF、IF、DF这3个标志位。1基础知识8086/8088CPU的内部结构191基础知识8086/8088

CPU的内部结构

4.

段地址寄存器

这是一组专用寄存器,共有4个,每个都是16位的,它们用于存放逻辑地址中的段地址部分,各个寄存器的名称和代号分别:1)CS—16位代码段寄存器。

2)DS—16位数据段寄存器。3)ES—16位附加段寄存器。4)SS—16位堆栈段寄存器。5.

地址加法器

地址加法器能进行加法运算,但并不是运算器的一部分,它是8088中专门用来计算物理地址的一个特殊加法运算部件,相加的两个操作数都是16位的,而运算结果则有20位,这个20位的二进制数将作为CPU对内存操作时的物理地址送往地址总线。需要把它和运算器严格区分开。普通的8bit或者16bit二进制数的加法运算是由运算器完成,而物理地址的计算则是由地址加法器执行的,两个部件各司其职,互不干扰,相互间也没有直接联系。1基础知识8086/8088CPU的内部结构201基础知识四、内存组织1.

存储器有许多个单元构成。每个单元由8个触发器组成,就构成可以存放一个字节的单元电路称为存储单元。与寄存器不同的是存储器由于单元数太多,不是以名字访问,而是为每一个单元编有编号——地址。注意:读/写操作不能同时进行。读/写是以CPU为参考基准,“读”CPU从内存单元取信息,“写”CPU向内存单元装入信息。读信号有效,地址有效,信息从内存单元读出到DB。写信号有效,地址有效,信息从DB写入内存单元。1基础知识四、内存组织211基础知识四、内存组织2.与存储器相关的概念。(1)以字节为单位编址,而且是唯一的地址。(2)存储器的容量。是指系统全部的内存字节数。(3)存储器的容量以KB为单位,2的10次方=1024个字节=1KB。(4)20位地址值是无符号数。编址容量是2的20次方,容量是1MB。(5)1MB地址范围:00000H~FFFFFH。(6)存储器的“节”。“节”的长度16个字节,“节”边界地址XXXX0H。1基础知识四、内存组织221基础知识四、内存组织3.为什么要使用“节”边界的地址。(1)1MB容量的内存,“节”边界地址范围是00000H~FFFF0H,共有64个小节,实际使用时不考虑最后一位0,“节”边界地址范围是0000H~FFFFH。这样记录段地址的寄存器可以采用16位寄存器。(2)但是计算机不是使用小节。而是设置内存可以使用四个段,每一个段的开始必须是“节”边界,而且是任意的。(3)每个段的长度最大可以设置成64KB,也可以小于64KB。(4)对存储器单元位置的确定采用“段地址”与“段内的偏移(EA)”。(4)对存储器单元位置的确定采用“段地址”与“段内的偏移(EA)”表示。如,04E00—04E0:0000,04E0F—04E0:000F。前者称为物理地址表示法,后者称为逻辑地址表示法。04E00:030F的逻辑地址,其物理地址=04E00+030F=030F=0510F(5)物理地址=段的起始地址×10H+段内偏移地址。1基础知识四、内存组织231基础知识四、内存组织练习1(1)8088/8086CPU的地址线是几根?(2)8088/8086CPU存储器系统的单元长度是几位?容量是多少?(3)地址值是有符号数吗?(4)1024个字节=1KB的地址范围是:

00000H~H。(5)16个字节的地址范围是:

00000H~H。(6)16个字节的地址范围是:

00010H~H。1基础知识四、内存组织241基础知识四、内存组织解答1:(1)8088/8086CPU的地址线是20根。(2)8088/8086CPU存储器系统的单元长度是8位。容量是多少1MB。(3)20位地址值是无符号数。(4)2的10次方=1024个字节=1KB的地址范围是:00000H~003FFH。(5)16个字节的地址范围是:00000H~0000FH。(6)16个字节的地址范围是:00010H~0001FH。1基础知识四、内存组织251基础知识8088/8086CPU的内存组织1.内存储器被分为几个逻辑段,段内用16位的地址寻址。16位的地址可以编址:2的16次方=64K,范围0000H~FFFFH,段的长度最大64KB。2.段的起始地址也是16位,必须选在节边界位置,地址的低4位是0000。3.实际使用中内存地址的表示方法。段地址(段的起始地址):逻辑地址(段内偏移地址)物理地址=段的起始地址×10H+段内偏移地址1基础知识8088/8086CPU的内存组织261基础知识8088/8086CPU的内存组织练习2:(1)逻辑段的起始地址要求是什么?起始段必须从00000、10000和20000开始吗?(2)一个逻辑段的最大长度是多少?段内偏移地址的范围?(3)物理地址是几位?逻辑地址是几位?(4)一个逻辑段的长度必须是最大长度吗?(5)段地址是几位?1基础知识8088/8086CPU的内存组织271基础知识8088/8086CPU的内存组织解答2:(1)逻辑段的起始地址要求是20位物理地址的低4位是0000。起始段不一定从00000、10000和20000开始。(2)一个逻辑段的最大长度是64K。段内偏移地址范围0000H~FFFFH。(3)物理地址是20位。逻辑地址是16位。(4)一个逻辑段的长度不必是最大长度64K。(5)段地址是16位。1基础知识8088/8086CPU的内存组织281基础知识段寄存器的使用1.8088汇编语言程序,包含有4个段:指令段、数据段、堆栈段和附加数据段。2.4个段寄存器。CS指令段寄存器。DS数据段寄存器。SS堆栈段寄存器。ES附加数据段寄存器。存放每个段的段起始地址。均是16位长度。3.每一个段的作用。指令段:存放正在运行程序的指令序列。数据段:存放当前运行程序所用到的数据。堆栈段:内存的一个区域,以后进先出的方式工作。4.指令段的偏移地址由指令指针寄存器IP给出。5.堆栈段的偏移地址由堆栈指针寄存器SP给出。6.数据段的偏移地址由指令的操作数地址给出。1基础知识段寄存器的使用291基础知识五堆栈组织堆栈是用来暂存一批后面需要引用的数值数据或地址数据的一段特别存储区,在堆栈中按“先进后出”或“后进先出”的原则存取数据。8086/8088微处理器采用了存储器分段技术,用堆栈段来表示上述特殊区域。堆栈段中存取数据的地址由堆栈寄存器SS和堆栈指针SP来确定。堆栈寄存器SS存放堆栈段的首地址,堆栈指针SP中存放栈顶的地址,此地址表示栈顶离段首址的偏移量,存取数据都在栈顶进行。8086/8088的堆栈操作有两种:入栈操作PUSH和出栈操作POP,均为16位的字操作,而且操作都在栈顶进行。1基础知识五堆栈组织301基础知识六专用和保留的存储单元

INTEL公司为了保证与未来的INTEL产品的兼容性,规定在存储区的最低地址区和最高地址区保留了一些单元供CPU专用,或为将来开发软件产品和硬件产品使用。其中:1)00000H~0007FH(共128B):用于中断,以存放中断向量表;2)FFFFOH~FFFFFH(共16B):用于系统复位启动。

在8086/8088系统中也作了相应的规定:1)00000H~003FFH(共1KB):用来存放中断向量表。2)B0000H~BOFFFH(共4KB):是单色显示器的视频缓冲区,存放单色显示器当前屏幕显示字符所对应的ASCII码及其属性。3)B8000H~BBFFFH(共16KB):是彩色显示器的视频缓冲区,存放彩色显示器当前屏幕像素点所对应的代码。4)FFFF0H~FFFFFH(共16B):用于系统复位启动。由于有了专用和保留的存储单元的规定,使得采用INTEL公司CPU的各种微机系统都具有了较好的兼容性。1基础知识六专用和保留的存储单元311基础知识小结

计算机内部使用二进制,汇编语言中可以用各种数制书写数据,不同进制之间存在固定的转换关系。数据有无符号数、带符号数、字符等形式,表现形式不同的数据可以在计算机内部有相同的存储形式。补码是表示带符号数的一种方法,用补码表示的数据在进行加减运算时比较方便。

汇编语言属于低级语言。汇编语言适用于编写与计算机结构联系密切、需要直接控制硬件设备的程序。

CPU是计算机的核心部件,它由运算器、控制器及寄存器组构成。运算器用来完成算术运算、逻辑运算等操作。寄存器用来临时存放数据,可以为运算器提供操作数,也可以存放运算结果。CPU内部的寄存器数量有限,CPU需要经常与内存进行数据交换。为了正确地存放或取得内存数据,给每一个字节单元分配一个地址。8088系统采用了20位的地址编码。CPU内部寄存器又不能直接存放20位物理地址,所以内存地址采用了分段的办法。不同的逻辑地址可能会对应相同的物理地址。充分利用CPU的内部寄存器可以加快程序的执行速度。了解内存分段存储技术和逻辑段的分配方法有助于更好地理解为什么汇编语言程序以段为基本编写单位,有助于汇编语言程序的设计。1基础知识小结32

TheEnd!ThankyouForyourlistening!TheEnd!33汇编语言程序设计汇编语言程序设计34课程介绍

汇编语言是计算机系统提供给用户的最快、最有效的语言,也是能对硬件直接编程的语言。因此,对空间和时间要求很高的程序,或需要直接控制硬件的程序,必须使用汇编语言进行程序设计。

课程介绍汇编语言是计算机系统提供给35教学内容

基础知识

介绍指令系统和寻址方式

伪操作和汇编语言程序格式汇编语言程序设计方法子程序设计方法

I/O和中断传递方式

BIOS、DOS功能调用与程序设计高级汇编技术教学内容基础知识36学习目标

通过学习本课程,了解Intel系列微型机的基本组成以及计算机中数和字符的表示方法;熟练掌握Intel8086指令系统及寻址方式,伪指令及汇编语言程序格式;掌握基本程序设计方法、I/O程序设计方法以及DOS和BIOS调用;掌握宏汇编的基本概念和方法;了解汇编语言程序与高级语言程序的连接方法,熟悉上机操作和程序调试技术,初步具备软件设计的能力。学习目标通过学习本课程,了解Int371基础知识一、计算机语言(1)机器语言。由0或1代码形成的语言。如,00000101—“加”。

机器语言具有以下特征:

1)是唯一的能被计算机识别并执行的语言。

2)是由0、1代码构成的语言,和自然语言相

差甚远,不便于阅读和理解。

3)是面向机器的语言(低级语言)1基础知识一、计算机语言381基础知识一、计算机语言(2)汇编语言。机器指令的符号形式。如,ADDAX,50—“加”。汇编指令:又称为符号指令,是机器指令符号化的表示。汇编语言:是由汇编指令、汇编伪指令及汇编语言的语法规则组成。汇编语言源程序:按照严格的语法规则用汇编语言编写的程序。也可简称为源程序。汇编程序:由于计算机不能直接识别和执行汇编语言源程序,因此需要把汇编语言源程序翻译成机器语言程序才可以由计算机执行。这个翻译的过程称为“汇编”,这种把汇编语言源程序翻译成目标程序的语言加工程序称为汇编程序。汇编程序将其翻译为机器语言后,才能交付计算机硬件系统加以识别和执行。汇编程序是为计算机配置的实现把汇编语言源程序翻译成目标程序的一种系统软件。1基础知识一、计算机语言391基础知识一、计算机语言(2)汇编语言。

汇编语言的特点:1)汇编语言与处理器密切相关。由于不同的处理器使用不同的汇编语言,所以汇编语言源程序与高级语言源程序相比,汇编语言程序的通用性、可移植性较差。但与机器语言相比,汇编语言易于理解和记忆,编写的源程序可读性强,源程序翻译成机器语言后的执行文件在存储空间、执行速度方面与机器语言编写的程序大致相当。2)汇编语言程序效率高。用汇编语言编写的源程序汇编后的目标程序短小精悍,运行效率高。其高效率反映在时间和空间两个方面:一是运行速度快;二是目标程序短。在采用相同算法的前提下,任何高级语言程序在时间和空间的效率都不如汇编语言程序。3)编写汇编语言源程序比编写高级语言源程序烦琐。汇编语言是面向机器的语言,高级语言是面向过程或面向目标、对象的语言。程序员在用汇编语言编写程序时,必须考虑包括寄存器、存储单元和寻址方式在内的几乎所有问题。在使用高级语言编写程序时,程序员不会考虑这些细节问题。4)调试汇编语言程序比调试高级语言程序困难。汇编语句指令的有限功能和程序员要注意太多的细节问题往往是造成调试困难的两个主要原因。1基础知识一、计算机语言401基础知识一、计算机语言(2)汇编语言。

汇编语言的主要应用场合是:1)程序执行占用较短的时间,或者占用较小存储容量的场合。如操作系统的核心程序段,实时控制系统的软件,智能仪器仪表的控制程序等。2)程序与计算机硬件密切相关,程序直接控制硬件的场合。如I/O接口电路的初始化程序段,外部设备的低层驱动程序等。3)需提高大型软件性能的场合。如计算机系统频繁调用的子程序等。4)没有合适的高级语言的场合。如开发最新的处理器程序时,暂时没有支持新指令的编译程序。1基础知识一、计算机语言411基础知识一、计算机语言(3)高级语言。接近自然的语言。如,数学语言。X=20+50高级语言具有以下特征:

1)更接近于自然语言,编程、阅读更容易。2)一个机器是否支持该高级语言与计算机的硬件系统无关。

3)生成的目标代码效率低(时空性能差)。只取决于有无相应的编译程序。注意:计算机能够直接执行的语言是机器语言。汇编语言与高级语言都必须借助编译软件,经过翻译之后,生成计算机可执行的代码(机器语言)才能够执行。1基础知识一、计算机语言421基础知识二、数制及运算

1.二进制数:由数字符号0、1构成,逢2进1,借1当2。例如:0、1、10、11、100、101、110、111。

练习计算:二进制加法。

1001+0011=?0101+1001=?

2.八进制数:由数字符号0~7构成,逢8进1,借1当8。例如:0、1、2、3、4、5、6、7、10、11、12。

练习计算:八进制加法。

06+07=?65+56=?1基础知识二、数制及运算431基础知识二、数制及运算

3.十六进制数:由数字符号0~9和字母A~F构成,逢16进1,借1当16。例如:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、10、11、12。

练习计算:十六进制加法。

0F+02=?89+56=?1基础知识二、数制及运算441基础知识二、数制及运算

4.不同进制数的转换(1)十进制数转换成二进制数(2)二进制数转换成十进制数。

是十进制数转换成二进制数的逆运算。(3)二进制数转换成十六进制数。

将二进制数从低位到高位,以4位为一组分割,然

后将4位的二进制数写成对应的十六进制数。(4)十六进制数转换成二进制数

是二进制数转换成十六进制数的逆运算。即将十六进制数按4位二进制数展开。1基础知识二、数制及运算451基础知识二、数制及运算

5.字符的表示:

计算机的输入/输出设备,一般都是以字符方式输入与输出,如,“a”、“A”,“1”、“2”。计算机以二进制编码的形式表示这些字符。ASCII码BCD码

1基础知识二、数制及运算461基础知识补码的运算:1

无符号数的运算2原码的表示方法3补码的表示方法4补码的运算5带符号数的范围6无符号数的范围

1基础知识补码的运算:471基础知识计算机中的常用名词术语

1.

记录数据或信息的最小单位——“位”。

(1)最简单的输入设备—开关。

(2)最简单的输出设备。灯(3)记录一位“0”或“1”的元件“触发器”。2.计算机内部记录一个位用“触发器”。3.8位称为一个字节,16位称为一个字。1基础知识计算机中的常用名词术语481基础知识三、微型计算机的结构

计算机系统由硬件系统(Hardware)和软件系统(Software)两部分组成。1.

硬件系统

计算机硬件系统由运算器、控制器、存储器、输入/输出设备五大部分组成。其中运算器和控制器构成中央处理器CPU(CentralProcessorUnit),中央处理器和存储器(Memory)构成主机。

微机的硬件系统由主机和外部设备构成。主机由微处理器(MicroProcessor)、存储器和输入/输出(I/O)接口三个部分组成,各部分由系统总线把它们连接在一起。1基础知识三、微型计算机的结构491基础知识三、微型计算机的结构(1)核心器件是CPU。(2)半导体存储器(RAM、ROM)、接口电路通过总线与CPU相连。(3)DB是数据总线,AB是地址总线,CB是控制总线。(4)外设通过接口与CPU相连接。2.

软件系统

微机的软件系统由系统软件和应用软件两大部分组成。1基础知识三、微型计算机的结构501基础知识8086/8088

CPU的内部结构

1.8086/8088CPU的组成

微型计算机的核心部件CPU从功能上讲由三部分构成:运算器、控制器和寄存器组。运算器完成算术运算和逻辑运算,控制器负责整个系统的协调,寄存器组临时存放数据。2.8088的通用寄存器组

寄存器是CPU内部临时存放数据的部件,它的存取速度远比内存快,可以把数据通过内部总线送往运算器进行运算,或者接受来自运算器的结果。因此充分利用CPU的内部寄存器可以加快程序的执行速度。1基础知识8086/8088CPU的内部结构511基础知识8086/8088

CPU的内部结构

8088的通用寄存器组包括:

(1)数据寄存器:数据寄存器包括AX、BX、CX和DX这4个16位的通

用寄存器。

(2)变址寄存器:包括SI、DI这两个16位的通用寄存器。

(3)指针寄存器包括BP、SP这两个16位的通用寄存器。3.控制寄存器IP和PSW这两个16位的寄存器。

1)IP(InstructionPoint)指令指针寄存器。用于存放下一条指令所在的

偏移地址。

2)PSW(ProgramStatusWord)程序状态字寄存器,又称为标志寄存器

(FR)。

8088使用其中的9位,用于存放当前程序执行的状况和运算结果的特征,根据功能,在8088中PSW使用的9位标志位可分为两组:一组为条件标志位(或称为状态标志位):CF、ZF、SF、OF、PF、AF这6个标志位。另一组是控制标志位:TF、IF、DF这3个标志位。1基础知识8086/8088CPU的内部结构521基础知识8086/8088

CPU的内部结构

4.

段地址寄存器

这是一组专用寄存器,共有4个,每个都是16位的,它们用于存放逻辑地址中的段地址部分,各个寄存器的名称和代号分别:1)CS—16位代码段寄存器。

2)DS—16位数据段寄存器。3)ES—16位附加段寄存器。4)SS—16位堆栈段寄存器。5.

地址加法器

地址加法器能进行加法运算,但并不是运算器的一部分,它是8088中专门用来计算物理地址的一个特殊加法运算部件,相加的两个操作数都是16位的,而运算结果则有20位,这个20位的二进制数将作为CPU对内存操作时的物理地址送往地址总线。需要把它和运算器严格区分开。普通的8bit或者16bit二进制数的加法运算是由运算器完成,而物理地址的计算则是由地址加法器执行的,两个部件各司其职,互不干扰,相互间也没有直接联系。1基础知识8086/8088CPU的内部结构531基础知识四、内存组织1.

存储器有许多个单元构成。每个单元由8个触发器组成,就构成可以存放一个字节的单元电路称为存储单元。与寄存器不同的是存储器由于单元数太多,不是以名字访问,而是为每一个单元编有编号——地址。注意:读/写操作不能同时进行。读/写是以CPU为参考基准,“读”CPU从内存单元取信息,“写”CPU向内存单元装入信息。读信号有效,地址有效,信息从内存单元读出到DB。写信号有效,地址有效,信息从DB写入内存单元。1基础知识四、内存组织541基础知识四、内存组织2.与存储器相关的概念。(1)以字节为单位编址,而且是唯一的地址。(2)存储器的容量。是指系统全部的内存字节数。(3)存储器的容量以KB为单位,2的10次方=1024个字节=1KB。(4)20位地址值是无符号数。编址容量是2的20次方,容量是1MB。(5)1MB地址范围:00000H~FFFFFH。(6)存储器的“节”。“节”的长度16个字节,“节”边界地址XXXX0H。1基础知识四、内存组织551基础知识四、内存组织3.为什么要使用“节”边界的地址。(1)1MB容量的内存,“节”边界地址范围是00000H~FFFF0H,共有64个小节,实际使用时不考虑最后一位0,“节”边界地址范围是0000H~FFFFH。这样记录段地址的寄存器可以采用16位寄存器。(2)但是计算机不是使用小节。而是设置内存可以使用四个段,每一个段的开始必须是“节”边界,而且是任意的。(3)每个段的长度最大可以设置成64KB,也可以小于64KB。(4)对存储器单元位置的确定采用“段地址”与“段内的偏移(EA)”。(4)对存储器单元位置的确定采用“段地址”与“段内的偏移(EA)”表示。如,04E00—04E0:0000,04E0F—04E0:000F。前者称为物理地址表示法,后者称为逻辑地址表示法。04E00:030F的逻辑地址,其物理地址=04E00+030F=030F=0510F(5)物理地址=段的起始地址×10H+段内偏移地址。1基础知识四、内存组织561基础知识四、内存组织练习1(1)8088/8086CPU的地址线是几根?(2)8088/8086CPU存储器系统的单元长度是几位?容量是多少?(3)地址值是有符号数吗?(4)1024个字节=1KB的地址范围是:

00000H~H。(5)16个字节的地址范围是:

00000H~H。(6)16个字节的地址范围是:

00010H~H。1基础知识四、内存组织571基础知识四、内存组织解答1:(1)8088/8086CPU的地址线是20根。(2)8088/8086CPU存储器系统的单元长度是8位。容量是多少1MB。(3)20位地址值是无符号数。(4)2的10次方=1024个字节=1KB的地址范围是:00000H~003FFH。(5)16个字节的地址范围是:00000H~0000FH。(6)16个字节的地址范围是:00010H~0001FH。1基础知识四、内存组织581基础知识8088/8086CPU的内存组织1.内存储器被分为几个逻辑段,段内用16位的地址寻址。16位的地址可以编址:2的16次方=64K,范围0000H~FFFFH,段的长度最大64KB。2.段的起始地址也是16位,必须选在节边界位置,地址的低4位是0000。3.实际使用中内存地址的表示方法。段地址(段的起始地址):逻辑地址(段内偏移地址)物理地址=段的起始地址×10H+段内偏移地址1基础知识8088/8086CPU的内存组织591基础知识8088/8086CPU的内存组织练习2:(1)逻辑段的起始地址要求是什么?起始段必须从00000、10000和20000开始吗?(2)一个逻辑段的最大长度是多少?段内偏移地址的范围?(3)物理地址是几位?逻辑地址是几位?(4)一个逻辑段的长度必须是最大长度吗?(5)段地址是几位?1基础知识8088/8086CPU的内存组织601基础知识8088/8086CPU的内存组织解答2:(1)逻辑段的起始地址要求是20位物理地址的低4位是0000。起始段不一定从00000、10000和20000开始。(2)一个逻辑段的最大长度是64K。段内偏移地址范围0000H~FFFFH。(3)物理地址是20位。逻辑地址是16位。(4)一个逻辑段的长度不

温馨提示

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

评论

0/150

提交评论