收藏 分销(赏)

微型计算机原理与汇编语言程序设计电子教案课件整套教学课件.ppt

上传人:人****来 文档编号:12014091 上传时间:2025-08-27 格式:PPT 页数:522 大小:6.44MB 下载积分:25 金币
下载 相关 举报
微型计算机原理与汇编语言程序设计电子教案课件整套教学课件.ppt_第1页
第1页 / 共522页
微型计算机原理与汇编语言程序设计电子教案课件整套教学课件.ppt_第2页
第2页 / 共522页


点击查看更多>>
资源描述
微型计算机原理与汇编语言程序设计,第1章,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,微机原理与汇编语言程序设计,第3章,微机原理与汇编语言程序设计,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,微机原理与汇编语言程序设计,微机原理与汇编语言程序设计,单击此处编辑母板标题样式,单击此处编辑母板文本版式,第6章 汇编语言程序设计,微机原理与汇编语言程序设计,单击此处编辑母板标题样式,单击此处编辑母板文本版式,第7章 分支结构程序设计,微机原理与汇编语言程序设计,单击此处编辑母板标题样式,单击此处编辑母板文本版式,第8章 循环结构程序设计,微机原理与汇编语言程序设计,单击此处编辑母板标题样式,单击此处编辑母板文本版式,第9章 子程序设计,微机原理与汇编语言程序设计,单击此处编辑母板标题样式,单击此处编辑母板文本版式,第7章 中断程序设计,单击此处编辑母版文本样式,第二层,第三层,第四层,第五层,单击此处编辑母版标题样式,第11章,第1章 微型计算机概述,教学重点,了解计算机的发展与应用,基础是熟悉计算机的软硬件组成,难点是计算机各个部件协调工作的过程及有关概念,重点是掌握计算机科学中的术语和基本概念,第1章 微型计算机概述,1.1 计算机的发展与应用,1.2 计算机的基本结构和工作原理,1.3 计算机系统,1.4 微型计算机的基本概念,1.1 计算机的发展与应用,1.1.1 计算机的发展历史及发展趋势,1、世界上第一台电子计算机,2、冯,诺伊曼结构计算机,存储程序,五大功能部件,3、逻辑部件的发展,电子管晶体管中小规模集成电路,大规模和超大规模集成电路,4、计算机的发展趋势,1.1 计算机的发展与应用,1.1.2 计算机的特点与分类,1、计算机的特点,(1)运算速度快:,(2)计算精度高:,(3)具有,“,记忆,”,和逻辑判断功能:,(4)能自动运行并且具备人机交互功能:,1.1 计算机的发展与应用,1.1.2 计算机的特点与分类,计算机的种类很多,随着计算机的不断发展和新型计算机的出现,计算机的分类方法也在不断变化。按照,“,电气与电子工程师协会,”,(IEEE)在1989年提出的分类方法,可以将计算机分为以下6种:,个人计算机、工作站、小型计算机、主机、小巨型计算机、巨型计算机。,1.1 计算机的发展与应用,1.1.3 计算机的应用,1、科学计算,2、数据处理,3、工业控制和实时控制,4、CAD/CAM/CIMS,5、人工智能,6、虚拟现实,1.2 计算机的基本结构和工作原理,硬件,基本结构,工作原理,常用术语,2.程序的自动执行,1.存储程序原理,1.3 微型计算机系统的组成,硬件,(Hardware),集成电路的出现使得,微处理器飞速发展,CPU,存储器,外部设备,软件,(Software),系统软件,应用软件,计算机语言,机器语言:由0和1构成,汇编语言:用助记符表示,高级语言:类自然语言表示,微处理器飞速发展,80386,80486,奔腾,奔腾2代,奔腾4代,80286,8086,奔腾3代,IA-64,(安腾),4004,不是我不明白,,这世界变化太快。,扎扎实实掌握知识,,以不变应万变!,计算机中的常用术语,位(bit,b):计算机表示信息的最基本单位,一个二进制位:0或1。,1Byte=1B=8bits,1KB=1024B,1MB=1024KB,1GB=1024MB,1TB=1024GB,字节(Byte,B):相邻的8位0和1的组合,最通用的单位。,字(word):计算机内部数据处理的基本单位。一个字为2字节,双字为4字节。,字长:计算机能一次性处理的二进制位数称为字长。不同机型字长不同。,主频,访存空间,指令执行时间,计算机的五大功能部件,运算器,存储器,输出设备,控制器,程序和,原始数据,计算,结果,输入设备,计算机的基本结构,运算器,存储器,输出设备,控制器,程序和,原始数据,计算,结果,输入设备,微型计算机的硬件组成,中央处理单元 CPU,控制器、运算器,对汇编语言程序员,最关心其中的寄存器,存储器,内存、外存(主存、辅存),内存,呈现给汇编语言程序员是存储器地址,外,部,设,备(接口电路),输入设备和输出设备,汇编语言程序员看到的是端口(I/O地址),图示,微机硬件系统组成图,数据总线,地址总线,控制总线,ROM,+,RAM,硬盘、软盘、U盘等,I/O,接,口,主存储器,系统总线,辅助存储器,输入设备,输出设备,CPU,寄存器,控制器,运算器,Cache,相关概念,1.系统总线,2.硬件结构,计算机中连接多个功能部件的信号线,分为数据总线、地址总线和控制总线。,第1章 教学要求,了解计算机的发展史,理解计算机科学中的,常用术语,和,概念,熟悉冯诺伊曼结构计算机的,系统组成,思考,:为什么计算机中采用二进制?,预习 第2章内容再见,本章主要教学内容,l,计算机中数制基本概念、数制之间的相互转换,l,无符号数和带符号数的表示方法,l,ASCII码和BCD码的相关概念和应用,l,汉字编码及其应用,第,2,章,计算机中的数据表示,第,2,章 计算机中的数据表示,本章教学目的及要求,l,熟悉数制的基本概念和计算机中,常用进位计数制,l,掌握,二、八、十、十六进制的表达和相互转换,l,理解,机器数和带符号数的原码、反码、补码表示,l,掌握美国信息交换标准代码(ASCII码)和二十进制编码BCD码的表达及应用。,l,熟悉微型计算机常用的汉字编码及其应用,2.1,计算机中的数制及其转换,第2章,计算机中的数据表示,2.2,计算机中数值数据的表示及运算,2.3,字符编码,2.4,汉字编码,2.1,计算机中的数制及其转换,通常,计算机中的数据分为两类:,(1)数:用来直接表示量的多少,有大小之分,能够进行加减等运算。,(2)码:通常指代码或编码,在计算机中用来描述某种信息。,2.1.1,数制的基本概念,1,数的表示,任何一种数制表示的数都可以写成按位权展开的多项式之和。,Nd,n1,b,n1,d,n2,b,n2,d,n3,b,n3,d,m,b,m,式中:n整数的总位数。,m小数的总位数。,d,下标,表示该位的数码。,b表示进位制的基数。,b,上标,表示该位的位权。,2计算机中常用的进位计数制,计数制 基数 数 码 进位关系,二进制,2 0,、,1,逢二进一,八进制,8 0,、,1,、,2,、,3,、,4,、,5,、,6,、,7,逢八进一,十进制,10 0,、,1,、,2,、,3,、,4,、,5,、,6,、,7,、,8,、,9,逢十进一,十六进制,16 0,、,1,、,2,、,3,、,4,、,5,、,6,、,7,、,8,、,9,A,、,B,、,C,、,D,、,E,、,F,逢十六进一,3,计数制的书写规则,(,1,)在数字后面加写相应的英文字母作为标识。,如:二进制数的,100,可写成,100B,十六进制数,100,可写成,100H,(,2,)在括号外面加数字下标。,如:(,1011,),2,表示二进制数的,1011,(,2DF2,),16,表示十六进制数的,2DF2,2.1.2,数制之间的转换,(1)十进制整数转换为二进制整数,采用基数2连续去除该十进制整数,直至商等于“0”为止,然后逆序排列余数。,(2)十进制小数转化为二进制小数,连续用基数2去乘以该十进制小数,直至乘积的小数部分等于“0”,然后顺序排列每次乘积的整数部分。,(3)十进制整数转换为八进制整数或十六进制整数,采用基数8或基数16连续去除该十进制整数,直至商等于“0”为止,然后逆序排列所得到的余数。,(4)十进制小数转换为八进制小数或十六进制小数,连续用基数8或基数16去乘以该十进制小数,直至乘积的小数部分等于“0”,然后顺序排列每次乘积的整数部分。,(5)二、八、十六进制数转换为十进制数,用其各位所对应的系数,按“位权展开求和”的方法就可以得到。其基数分别为2、8、16。,(6)二进制数转换为八进制数,从小数点开始分别向左或向右,将每3位二进制数分成1组,不足3位数的补0,然后将每组用1位八进制数表示即可。,(7)八进制数转换为二进制数,将每位八进制数用3位二进制数表示即可。,(8)二进制数转换为十六进制数,从小数点开始分别向左或向右,将每4位二进制数分成1组,不足4位的补0,然后将每组用一位十六进制数表示即可。,(9)十六进制数转换为二进制数,将每位十六进制数用4位二进制数表示即可。,【,例,2.1】,将十进制整数(,105,),10,转换为二进制整数,采用“除,2,倒取余”的方法,过程如下:,2,105,2,52,余数为,1,2,26,余数为,0,2,13,余数为,0,2,6,余数为,1,2,3,余数为,0,2,1,余数为,1,0,余数为,1,所以,(,105,),10,(,1101001,),2,【例2.2】将十进制小数(0.8125),10,转换为二进制小数,采用“乘2顺取整”的方法,过程如下:,0.812521.625 取整数位1,0.62521.25 取整数位1,0.2520.5 取整数位0,0.521.0 取整数位1,所以,(0.8125),10,(0.1101),2,如果出现乘积的小数部分一直不为“,0,”,则可以根据精度的要求截取一定的位数即可。,【例2.3】将十进制整数(2347),10,转换为十六进制整数,采用“除16倒取余”的方法,过程如下:,16,2347,16,146,余数为11(十六进制数为B),16,9,余数为2,0,余数为,9,所以,(,2347,),10,(,92B,),16,2.2 计算机中数值数据的表示,2.2.1,基本概念,在计算机内部表示二进制数的方法称为数值编码,把一个数及其符号在机器中的表示加以数值化,称为机器数。机器数所代表的数称为数的真值。,表示一个机器数,应考虑以下三个因素:,1机器数的范围,字长为8位,无符号整数的最大值是(11111111)B=(255)D,此时机器数的范围是0255。,字长为,16,位,无符号整数的最大值是,(,1111111111111111,),B=,(,FFFF,),H=,(,65535,),D,此时机器数的范围是,065535,。,2机器数的符号,在算术运算中,数据是有正有负的,将这类数据称为带符号数。,为了在计算机中正确地表示带符号数,通常规定每个字长的最高位为符号位,并用,0,表示正数,用,1,表示负数。,3机器数中小数点的位置,在机器中,小数点的位置通常有两种约定:,一种规定小数点的位置固定不变,这时的机器数称为“定点数”。,另一种规定小数点的位置可以浮动,这时的机器数称为“浮点数”。,1原码,正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。,【例2.13】当机器字长为8位二进制数时:,X1011011 X,原码,01011011,Y1011011 Y,原码,11011011,1,原码,00000001 1,原码,10000001,127,原码,01111111 127,原码,11111111,原码表示的整数范围是:,(2,n-1,1)(2,n-1,1),其中n为机器字长。,则:8位二进制原码表示的整数范围是127127,16位二进制原码表示的整数范围是3276732767,2,反码,对于一个带符号的数来说,正数的反码与其原码相同,负数的反码为其原码除符号位以外的各位按位取反。,【,例,2.14】,当机器字长为,8,位二进制数时:,X,1011011 X,原码,01011011 X,反码,01011011,Y,1011011 Y,原码,11011011 Y,反码,10100100,1,反码,00000001 ,1,反码,11111110,127,反码,01111111 ,127,反码,10000000,负数的反码与负数的原码有很大的区别,反码通常用作求补码过程中的中间形式。,反码表示的整数范围与原码相同。,3补码,正数的补码与其原码相同,负数的补码为其反码在最低位加1。,【例2.15】(1)X1011011 (2)Y1011011,(1)根据定义有:X,原码,01011011 X,补码,01011011,(2)根据定义有:Y,原码,11011011 Y,反码,10100100,Y,补码,10100101,补码表示的整数范围是2,n-1,(2,n-1,1),其中n为机器字长。,则:8位二进制补码表示的整数范围是128127,16位二进制补码表示的整数范围是3276832767,当运算结果超出这个范围时,就不能正确表示数了,此时称为溢出。,4,补码与真值之间的转换,正数补码的真值等于补码的本身;负数补码转换为其真值时,将负数补码按位求反,末位加1,即可得到该负数补码对应的真值的绝对值。,【例2.16】X,补码,01011001B,X,补码,11011001B,分别求其真值X。,(1)X,补码,代表的数是正数,其真值:,X1011001B,(12,6,12,4,12,3,12,0,),(641681),(89)D,(2)X,补码,代表的数是负数,则真值:,X(1011001,求反,1)B,(01001101)B,(0100111)B,(12,5,12,2,12,1,12,0,),(32421),(39)D,2.2.3,定点数和浮点数表示,1定点数,由于定点位置不同,一般又分为两种情况。,对于整数,小数点约定在最低位的右边,称为定点整数。对于纯小数,小数点约定在符号位之后,称为定点小数。,2浮点数,如果要处理的数既有整数部分,又有小数部分,则采用定点数会遇到麻烦。为此可以采用浮点数,即小数点的位置不固定。,2.3,字符编码,2.3.1,美国信息交换标准代码(,ASCII,码),ASCII(American Standard Code for Information Interchange)码,是美国信息交换标准代码的简称,用于给西文字符编码;,包括英文字母的大小写、数字、专用字符、控制字符等;,这种编码由,7,位二进制数组合而成,可以表示,128,种字符;,在ASCII码中,按其作用可分为:,34,个控制字符;,10,个阿拉伯数字,52,个英文大小写字母;,32,个专用符号,2.3.2 二十进制编码BCD码,BCD(Binary-Coded Decimal)码又称为“二十进制编码”,专门解决用二进制数表示十进数的问题。最常用的是8421编码,其方法是用4位二进制数表示1位十进制数,自左至右每一位对应的位权是8、4、2、1。,1压缩BCD码,每一位数采用4位二进制数来表示,即一个字节表示2位十进制数。例如:二进制数10001001B,采用压缩BCD码表示为十进制数89D。,2非压缩BCD码,每一位数采用8位二进制数来表示,即一个字节表示1位十进制数。而且只用每个字节的低4位来表示09,高4位为0。,例如:十进制数89D,采用非压缩BCD码表示为二进制数是:,00001000 00001001B,2.4 汉字编码,2.4.1,基本概念,计算机处理汉字信息的前提条件是对每个汉字进行编码,这些编码统称为汉字代码。在汉字信息处理系统中,对于不同部位,存在着多种不同的编码方式。比如,从键盘输入汉字使用的汉字代码(外码)就与计算机内部对汉字信息进行存储、传送、加工所使用的代码(内码)不同,但它们都是为系统各相关部分标识汉字使用的。,系统工作时,汉字信息在系统的各部分之间传送,它到达某个部分就要用该部分所规定的汉字代码表示汉字。因此,汉字信息在系统内传送的过程就是汉字代码转换的过程。这些代码构成该系统的代码体系,汉字代码的转换和处理是由相应的程序来完成的。,1汉字输入码,汉字输入码是为用户由计算机外部输入汉字而编制的汉字编码,又称为汉字外部码,简称外码。使用较多的有以下4类:,(1)顺序码:如区位码、电报码等。,(2)音码:如拼音码、自然码等。,(3)形码:如五笔字型、大众码等。,(,4,)音形码:如双拼码、五十字元等。,2汉字机内码,汉字机内码是汉字处理系统内部存储、处理汉字而使用的编码,简称内码。,3汉字字形码,汉字字形码是表示汉字字形信息的编码。,4汉字交换码,汉字交换码是汉字信息处理系统之间或通信系统之间传输信息时,对每个汉字所规定的统一编码。,2.4.2,汉字代码的表示方法,2.4.3 几种常用的汉字编码,1,国标码,即“中华人民共和国国家标准信息交换汉字编码”(代号,GB2312-80,)。共收录汉字和图形符号,7445,个。其中:一级常用汉字,3755,个;二级非常用汉字和偏旁部首,3008,个;图形符号,682,个。,2,区位码,将,GB2312-80,全部字符集组成一个,9494,的方阵,每一行称为一个“区”,编号从,0194,;每一列称为一个“位”,编号也是从,01 94,。这样,每一个字符便具有一个区码和一个位码,将区码置前,位码置后,组合在一起就成为区位码。,3,BIG-5,码,BIG-5,码是我国台湾地区编制和使用的一套中文内码。它是为了解决各生产厂家中文内码不统一的问题而设计出的一套编码,并采用,5,大套装软件的“五大”命名为“,BIG-5,”码,俗称“大五码”。,4,GB13000,码,国际标准化组织(ISO)于1993年公布了“通用多八位编码字符集”的国际标准(ISO/IEC 10646)。我国发布了与其一致的国家标准,即GB13000码。,本章小结,本章着重介绍了计算机中数据的表示方法,重点处理了二、八、十、十六进制数的相关概念及各类数制之间相互转换的方法、无符号数和带符号数的机器内部表示、字符编码和汉字编码等。通过本章的学习,要掌握计算机内部的信息处理方法和特点,熟悉各类数制之间的相互转换,理解无符号数和带符号数的表示方法,掌握BCD码和字符的ASCII码以及汉字编码及其应用。,THANK YOU VERY MUCH,本章到此结束,,谢谢您的光临!,16/32位PC机,16位PC机是指采用16位80 x86 CPU的IBM PC/XT/AT这三款个人微机或它们的兼容机。,32位PC机是指采用32位80 x86 CPU而形成的微机,其基本结构仍然源于PC/AT机。,人们日常谈论的PC机或微机是上述微型计算机系统的统称。,第3章,80X86微处理器及体系结构,第3章,3.1,8086微处理器结构,3.2,8086微处理器的存储器和I/O组织,3.3,8086的时钟和总线周期和操作时序,3.4,80286、80386、80486等高档微处理器,3.1 8086微处理器结构,3.1.1,8086微处理器内部结构,3.1.2,8086微处理器的寄存器结构,3.1.1 8086微处理器内部结构,教学提示,EU和BIU的功能难理解,重点介绍8086微处理器的内部EU和BIU两大模块及其功能,3.1.1 8086微处理器,内部结构,微处理器(CPU)=ALU,+,Control,微型计算机=CPU,+,I/O接口,+,I/O设备,8086CPU基本性能指标,16位,集成2.9万只晶体管,+5V,40条,引脚,,双列直插,5MHz10MHz,0.3ns0.6ns,16根DB和20根AB,寻址空间达1MB,可组成多处理器系统,+,M,两大功能部件,执行部件EU(Execution Unit),结构,:,16位的,ALU,+,8个16位通用寄存器,+,16位的状态标志寄存器,+,数据暂存寄存器,+,执行部件的控制电路。,主要功能,:,从指令队列中取指、译码、执行;,若存、取数据,向BIU发命令,读/写存储器或I/O接口。,总线接口部件BIU(Bus Interface Unit),结构:,四个16位段地址,寄存器,(CS、DS、SS和ES),+,16位指令指针寄存器IP,+,20位地址加法器,+,6字节指令队列缓冲器,+,总线控制电路。,主要功能:,根据EU的请求,负责完成CPU与存储器或I/O设备之间的数据传送。,EU和BIU并行工作,等待取指1,执行1,等待取指2,执行2,等待取指3,执行3,MPU,总,线,忙,闲,忙,闲,忙,闲,传统微处理器的指令执行过程,取指1,取指2,取指3,取指4,取指5,取指6,EU,总线,执行1,执行2,执行3,执行4,执行5,执行6,忙,忙,忙,忙,忙,忙,BIU,8086,CPU,的指令执行过程,教学要求,了解8086CPU的基本性能指标,掌握8086CPU的EU和BIU的结构与功能,理解8086CPU的EU和BIU并行工作过程,预习,:P49-8086CPU的寄存器结构,思考:什么是寄存器?为什么在CPU中设置寄存器?,8086内部结构,内部暂存器,IP,ES,SS,DS,CS,输入/输出控制电路,总线,执行部分控制电路,1 2 3 4 5 6,ALU,标志寄存器,AH AL,BH BL,CH CL,DH DL,SP,BP,SI,DI,通用寄存器,地址加法器,指令队列缓冲器,执行部件(EU),总线接口部件(BIU),16位,20位,16位,8位,3.1.2 8086微处理器的寄存器结构,教学提示,介绍8086微处理器的,寄存器结构,及用途,寄存器是CPU内部的高速存储单元,它们为处理器提供各种操作所需要的数据或地址等信息,汇编语言程序采用它们各自的符号名,3.1.2 8086,微处理器的,寄存器结构,对程序员来说,,8086内部结构,的最重要的是其寄存器组,8个通用寄存器,1个指令指针寄存器,1个标志寄存器,4个段寄存器,8086CPU,内部寄存器,结构,累加器,基址寄存器,计数寄存器,数据寄存器,堆栈指针寄存器,基址指针寄存器,源变址寄存器,目的变址寄存器,指令指针寄存器,标志寄存器,代码段寄存器,段寄存器,附加段寄存器,堆栈段寄存器,数据寄存器,地址指针和,变址寄存器,控制寄存器,数据段寄存器,通用寄存器,IP,FLAGS,AH AL,BH BL,CH CL,DH DL,SP,BP,SI,DI,ES,SS,DS,CS,一、8086的通用寄存器,8086的16位通用寄存器是:,AXBXCXDX,SIDIBPSP,其中前4个数据寄存器都还可分成高、低8位两个独立的通用寄存器:,AHBHCHDH,ALBLCLDL,对其中某8位的操作,并不影响另外对应8位的数据,1、数据寄存器,数据寄存器用来存放计算的结果和操作数,BX也可以存放地址,每个寄存器又有它们各自的专用目的,AX累加器,使用频度最高,用于算术、逻辑运算以及与外设传送信息等;,BX基址寄存器,常用做存放存储器地址;,CX计数器,循环和串操作等指令中的隐含计数器;,DX数据寄存器,常用来存放双字长数据的高16位,或存放外设端口地址。,2、地址指针和变址寄存器,地址指针寄存器用于寻址内存,堆栈,内数据,SP,堆栈指针寄存器,指示栈顶的偏移地址,专用,BP,基址指针寄存器,表示数据在堆栈段中的地址,SP和BP与SS段寄存器联合确定堆栈段中的存储单元地址,变址寄存器常用于存储器寻址时提供地址,SI是源变址寄存器,DI是目的变址寄存器,串操作类指令中,SI和DI具有特别的功能,通用寄存器的特定用法,寄存器,操作,寄存器,操作,AX,字乘,字除,字I/O,CL,移位次数,AL,字节乘,字节除,字节I/O,查表转换,十进制运算,DX,字乘,字除,I/O端口访问,AH,字节乘,字节除,SP,堆栈操作,BX,查表转换、存储单元偏移地址,SI,数据串地址,CX,数据串操作指令,循环指令,DI,数据串地址,二、控制寄存器,1、指令指针寄存器IP,指示代码段中指令的偏移地址,与代码段寄存器CS联用,确定下一条指令的物理地址,计算机通过CS:IP寄存器来控制指令序列的执行流程,专用寄存器,OF,11,15 12,DF,10,IF,9,TF,8,SF,7,ZF,6,5,AF,4,3,PF,2,1,CF,0,2、标志寄存器,程序设计需要利用标志的状态,标志(Flag)用于反映指令执行结果或控制指令执行形式,8086处理器的各种标志形成了一个16位的标志寄存器FLAGS(程序状态字PSW寄存器),标志的分类,状态标志记录程序运行结果的状态信息,许多指令的执行都将相应地设置它,CF ZF SF PF OF AF,控制标志可由程序根据需要用指令设置,用于控制处理器执行指令的方式,DF IF TF,进位标志CF(Carry Flag),3AH+7CHB6H,没有进位:CF=0,AAH+7CH(1)26H,有进位:CF=1,当运算结果的最高有效位有进位(加法)或借位(减法)时,进位标志置1,即CF=1;否则CF=0。,零标志ZF(Zero Flag),3AH+7CHB6H,结果不是零:ZF=0,84H+7CH(1)00H,结果是零:ZF=1,注意,:,ZF为1表示的结果是0,若运算结果为0,则ZF=1;,否则ZF=0,符号标志SF(Sign Flag),运算结果最高位为1,则SF=1;否则SF=0,3AH+7CHB6H,最高位D,7,1:SF=1,84H+7CH(1)00H,最高位D,7,0:SF=0,有符号数据用最高有效位表示数据的符号,所以,最高有效位就是符号标志的状态,奇偶标志PF,(,Parity Flag),3AH+7CHB6H10110110B,结果中有5个1,是奇数:PF=0,PF标志仅反映最低8位中“1”的个数是偶或奇,即使是进行16位字操作,当运算结果最低字节中,“,1,”,的个数为零或偶数时,PF=1;否则PF=0,溢出标志OF,(Overflow Flag),若算术运算的结果有溢出,,则OF1;否则 OF0,3AH+7CHB6H,没有溢出:OF=0,AAH+7CH(1)26H,产生溢出:OF=1,辅助进位标志AF(Auxiliary Carry Flag),3AH+7CHB6H,D,3,有进位:AF=1,运算时D,3,位(低半字节)有进位或借位时,AF=1;否则AF=0。,这个标志主要由处理器内部使用,用于十进制算术运算调整指令中,用户一般不必关心,方向标志DF(Direction Flag),用于串操作指令中,控制地址的变化方向:,设置DF0,存储器地址自动增加;,设置DF1,存储器地址自动减少。,CLD,指令复位方向标志:DF0,STD,指令置位方向标志:DF1,中断允许标志IF(Interrupt-enable Flag),用于控制外部可屏蔽中断是否可以被处理器响应:,设置IF1,则允许中断;,设置IF0,则禁止中断。,CLI,指令复位中断标志:IF0,STI,指令置位中断标志:IF1,陷阱标志TF(Trap Flag),用于控制处理器进入单步操作方式:,设置TF0,处理器正常工作;,设置TF1,处理器单步执行指令。,单步执行指令,处理器在,每条指令执行结束,时,便产生一个编号为1的内部中断,这种内部中断称为,单步中断,TF也称,单步标志,逐条调试程序指令,即,单步调试,三、段寄存器,8086有4个16位段寄存器,CS,(代码段),指明,代码段,的起始地址,SS,(堆栈段),指明,堆栈段,的起始地址,DS,(数据段),指明,数据段,的起始地址,ES,(附加段),指明,附加段,的起始地址,每个段寄存器用来确定一个逻辑段的起始地址,每种逻辑段均有各自的用途,教学要求,理解8086微处理器的,寄存器结构,熟悉8086微处理器的寄存器用途,思考,:若CPU的字长为n位,则该CPU的访存空间为多少B?,预习:,8086微处理器的存储器,堆栈(Stack),堆栈是主存中一个特殊的区域,采用,先进后出FILO,(First In Last Out)或,后进先出LIFO,(Last In First Out)的原则进行存取操作。,通常由处理器自动维持。在8086中,由堆栈段寄存器SS和堆栈指针寄存器SP共同指示,3.2 8086微处理器的存储器和I/O组织,3.2.1,8086微处理器的存储器,3.2.2,8086微处理器的I/O组织,教学提示,介绍,8086CPU的存储器和I/O组织,8086微处理器存储器的分段、存储体的连接与访问都很难理解,注意区分物理地址与逻辑地址,3.2.1 8086微处理器的存储器,寄存器是微处理器内部暂存数据的存储单元,以名称表示,存储器则是微处理器外部存放程序及其数据的空间,程序及其数据可以长久存放在外存,在程序需要时才进入主存,主存需要利用地址区别,一、存储器结构,1、存储器单元的地址和内容,存储单元地址:8086系统中,为了标识和存取每一个存储单元,给每个存储单元规定的,唯一编号,。,存储单元的内容:一个存储单元中存放的信息。,存储单元存放的信息,从图可看到,地址为34560H的字节的存储单元中的内容是34H,而地址为34561H的字节存储单元中的内容是12H。,对准字和非对准字,任何两个相邻的字节组成一个字。,字按照低对低、高对高的原则进行存储,并以低字节的地址为该字的地址。,若该字的地址为偶地址,则该字为对准字;否则,该字为非对准字。,2、存储体的连接,8086,系统的,1MB,存储空间与,8086CPU,进行连接时,分为两部分:奇地址存储体和偶地址存储体。,两个存储体之间采用字节交叉编址方式,。,存储体与总线的连接,A,1,9,A,1,D,7,D,0,D,1,5,D,8,A,1,9,A,1,A,1,9,A,1,D,7,D,0,D,1,5,D,8,B,H,E,A,0,S,E,L,S,E,L,奇,地,址,存,储,体,偶,地,址,存,储,体,二、存储器的分段管理,8086CPU的地址线是20位的,最大可寻址空间应为2,20,=1MB,其物理地址范围从00000HFFFFFH。,8086CPU寄存器都是16位的,1MB空间如何用16位寄存器表达?,8086CPU将1MB空间分成许多逻辑段(Segment),每个段最大为64KB,段地址的低4位为0000B(逻辑段的起始地址必须是16的倍数),1MB空间的分段,1MB空间最多能分成多少个段?,每隔16个存储单元就可以开始一个段,所以,1MB,最多,可以有,:,2,20,162,16,64K,个,段,1MB空间最少能分成多少个段?,每隔64K个存储单元开始一个段,所以1MB,最少,可以有:,2,20,2,16,16 个,段,各段独立的分配情况示例,设CS=B000H、DS=1CDEH、SS=4200H、ES=0150H,它们分别为代码段、数据段、堆栈段和附加段的段首址。自每个段首址开始,各段均占64KB的范围,各段之间互不重叠。如图。,各段相互重叠情况示例,设CS=0200H、DS=0400H、SS=0480H,这样代码段、数据段和堆栈段的物理首地址分别为02000H、04000H和04800H。其中代码段占8KB地址空间,数据段占2KB,堆栈段占256B,SP=0100H。如图所示。,三、物理地址和逻辑地址,一个存储单元除具有一个唯一的,物理地址,外,还具有多个,逻辑地址,物理地址存储单元的实际地址,是,CPU,和存储器进行数据交换所使用的唯一的地址,逻辑地址在程序中使用的地址,由段地址和偏移地址组成,形式为:,段地址:偏移地址,物理地址的形成,由段地址左移,4,位后在后,16,位上加上偏移地址形成,例:若某内存单元在数据段中,(,DS,),=2000H,,,EA=0100H,,,则其逻辑地址为,2000H,:,0100H,物理地址为,2000H,10H,0100H=20100H,四、专用的和保留的存储器单元,8086CPU,为了后续产品的兼容性,规定在存储区的最低地址区和最高地址区保留一些单元供,CPU,的某些特殊功能专用,或为将来开发软件产品和硬件产品而保留。,3.2 教学要求,掌握,8086微处理器存储器的分段,理解存储体的连接与访问,注意区分物理地址与逻辑地址,掌握I/O端口的编址方式,思考,:为什么计算机中采用二进制?,地址编号,十六进制地址 二进制地址,00000H 0000 0000 0000 0000 0000B,00001H 0000 0000 0000 0000 0001B,00002H 0000 0000 0000 0000 0010B,00003H 0000 0000 0000 0000 0011B,FFFFEH 1111 1111 1111 1111 1110B,FFFFFH 1111 1111 1111 1111 1111B,微型计算机的组成,AB,DB,CB,CPU,存储器,I/O接口,外设,3.2.2 8086微处理器的I/O组织,外设与计算机连接时所用的接口电路称为,I/O,接口。,每个,I/O,接口中都有一个或多个寄存器,用于数据缓冲、提供状态信息和控制信息。这些寄存器称为I/O端口。,I/O端口有地址号,称为端口地址或端口号。,8086,的,I/O,端口的编址方式,统一编址:存储器映射方式,端口和存储单元统一编址,独立编址:,I/O,映射方式,端口单独编址构成一个,I/O,空间,8086,可访问的,I/O,端口最多可达,64K,个,8,位端口或,32K,个,16,位端口,3.3,8086的时钟和总线周期和操作时序,3.4,80286、80386等高档微处理器,3.3.1 概念,根据所连的存储器和外设规模可有两种工作模式:,最小模式:只有一8086CPU,最大模式:两个或两个以上CPU主CPU,+,协CPU,指令周期:执行一条指令所需时间,总线周期:机器周期,CPU通过总线与存储器或I/O接口进行一次数据传输所需的时间,T状态:时钟周期,CPU处理动作的最小单位,T1,T2,T3,Tw,T4,总线周期,TI,如图所示,为8086CPU和8088CPU的引脚信号图。共有40条引脚线,这些引脚线用来输出或接收各种信号:地址线,数据线,控制线和状态线,电源线和定时线。,在这里,我们将具体介绍一下8086最小模式下和最大模式下各位引脚功能。,3.3.2,8086CPU的外部引脚结构,8086CPU的外部引脚结构图,1、地址/数据总线AD15-AD0,地址/数据复用引脚,双向,三态。,地址/数据总线复用,分时工作。,AD15-AD0:地址总线的低16位A15-A0,输出访问存储器或I/O的部分地址信息。,AD15-AD0:16位数据总线D15-D0,与存储器和I/O设备交换数据信息。,2、地址/状态总线A19/S6-A16/S3,地址/状态总线复用引脚,输出,三态。,输出访问存储器的20位地址的高4位地址A19-A16。,A19/S6-A16/S3:输出CPU的工作状态。,分时工作,T1状态输出地址的高4位信息;T2、T3、T4状态输出状态信息。,S6:指示8086/8088当前是否与总线相连,S6=0,表示8086当前与总线相连。,S5:表明中断允许标志当前的设置。,S4、S3:指出当前使用段寄存器的情况。,S4 S3 段寄存器,0 0 当前正在使用ES,0 1 当前正在使用SS,1 0 当前正在使用CS,1 1 当前正在使用DS,3、控制总线,(1)BHE/S7:高8位数据总线允许/状态复用引脚。T1状态,输出BHE信号;其他状态输出S7状态信号(S7 8086中无定义)。,(2)RD:读信号,三态输出,低电平有效。RD=0,表示对存储器或I/O端口进行读操作。,(3)WR:写信号,三态输出,低电平有效。WR=0,表示对存储器或I/O端口进行写操作。,(4)READY:准备就绪,输入,高电平有效。READY=1,表示存储器或IO端口已准备好传送数据。若在T3状态检测到READY=0,表示未准备好,CPU自动插入一个或多个Tw,直到READY=1。,(5)RESET:复位信号,输入,高电平有效。,(6)CLK:主时钟信号,输入。,(7)INTR:可屏蔽中断请求信号,输入,高电平有效。当INTR=1,有中断请求,若IF=1,响应中断。,(8)NMI:不可屏蔽中断请求信号,输入,上升沿触
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服