欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    计算机软件及应用计算机组成原理.pptx

    • 资源ID:87527841       资源大小:1.36MB        全文页数:144页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机软件及应用计算机组成原理.pptx

    3.1.1 3.1.1 概述概述概述概述 04:51:50机器指令机器指令机器指令:计算机能直接识别的是由0和1排列而成的指令。使用不方便。汇编语言汇编语言汇编语言是基于英文的机器指令助记符汇编语言源程序 按汇编语言书写的程序汇编语言源程序由汇编程序(Assembler)转换成机器指令,供计算机接受并执行第1页/共144页3.1.1 3.1.1 概述概述概述概述 04:51:50 汇编语言的提出是计算机技术的一大进步,体现了计算思维的一个重要概念抽象。计算机程序设计语言的发展过程就是 不断抽象的过程。通过抽象,程序设计语言具有了更好的可编程性、可移植性、可重用性。第2页/共144页指令系统:指令:指令:就是要计算机执行某种操作的命令。就是要计算机执行某种操作的命令。一台计算机中所有机器指令的集合。一台计算机中所有机器指令的集合。指令集:指令集:数据表示数据表示寻址方式寻址方式指令集指令集返回首页第3页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 操作码操作码(Operation Code)地址码地址码(Operand)04:51:50冯诺依曼型计算机机器指令的逻辑格式 规定了指令所具有的功能 指明指令所要处理的数据。第4页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50一条指令中,操作数可能有一个、两个或三个,甚至更多。操作数的个数也可以是零,即指令没有操作数。在这些操作数中,作为处理单元输入的叫源操作数(Source Operand),用于存放处理结果的叫目的操作数(Destination Operand)。第5页/共144页指令字长决定于指令字长决定于操作码的长度操作码的长度指令字长指令字长=存储字长存储字长2.指令字长指令字长 可变可变操作数地址的长度操作数地址的长度操作数地址的个数操作数地址的个数1.指令字长指令字长 固定固定按字节的倍数变化按字节的倍数变化指令字长指令字长:一个指令字中包含二进制代码的位数。:一个指令字中包含二进制代码的位数。机器字长机器字长:计算机能直接处理的二进制数据的位数。:计算机能直接处理的二进制数据的位数。返回第6页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50数数数据据据表表表示示示:指令中所能表示的操作数数据类型,即能够被计算机硬件直接辨识的操作数数据类型定点数(含有符号数和无符号数)、浮点数(含单精度和双精度浮点数)、字符、逻辑数(又称布尔型数据)。第7页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50“堆栈(Stack)”是一个重要的数据结构,广泛应用于子程序调用和中断服务等领域。原则:后进先出(Last In First Out,LIFO)“压入(PUSH)”“弹出(POP)”返回第8页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50硬件堆栈:用专门的硬件设备来实现的堆栈,也称为级联堆栈。软件堆栈:为了降低硬件成本,大多数计算机(特别是微型计算机)常用软件来实现堆栈,即在内存中开辟一个堆栈区,并在处理器中设置指示堆栈栈顶单元地址的“堆栈指针寄存器(Stack Pointer,SP)”来管理这个堆栈。第9页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50相对于硬件堆栈,软件堆栈有三个优点:1.可以有较大的深度。2.可以设置多个堆栈。3.除了专门的堆栈指令PUSH和POP外,还可以使用任何访问主存的指令来访问堆栈中的数据。第10页/共144页3.1.2 3.1.2 指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数指令的操作码与操作数 04:51:50 只有标量数据表示和标量指令的处理器叫标量处理器,这是最常见、最通用的处理器。带有向量数据表示和向量指令的处理器叫向量处理器,例如我国于20世纪80年代研制的银河-1超级计算机就装备有向量处理器。返回第11页/共144页3.1.3 寻址方式 04:51:50 寻址方式寻址方式寻址方式 (Addressing)指的是指令按照何种方式寻找或访问到所需的操作数或信息。寻址方式分为指令寻址和数据寻址 指令寻址指令寻址指令寻址是为了找到下一条指令 数据寻址数据寻址数据寻址是为了找到本条指令所需的操作数 第12页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式 04:51:50n分为顺序寻址和跳跃寻址两种。n顺序寻址:每读取一次PC后,PC自动加1,指向下一条指令。n跳跃寻址则是由当前指令改写PC的内容,根据PC指向地址取下一条指令。1.指令寻址 第13页/共144页04:51:50LDA 1000ADD 1001DEC 1200JMP 7LDA 2000SUB 2001INCSTA 2500LDA 1100.0123456789PC+1指令地址寻址方式指令地址寻址方式指令地址指令地址指令指令顺序寻址顺序寻址1顺序寻址顺序寻址2顺序寻址顺序寻址3跳跃寻址跳跃寻址7顺序寻址顺序寻址8第14页/共144页3.1.3 寻址方式寻址方式-指令寻址指令寻址 04:51:51n改写PC的指令有“跳转指令(Jump)”和“分支指令(Branch)”。n这两种指令既可直接赋予PC一个新的值,也可在PC现有值的基础上增加或减少一定数量。返回第15页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式 04:51:512.数据寻址 立即数寻址直接寻址间接寻址 堆栈寻址 寄存器寻址 寄存器间接寻址 基址寻址 变址寻址 第16页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(1)立即数寻址 (Immediate Addressing)在指令中直接给出操作数的数值。指令执行阶段不访存指令执行阶段不访存 A 的位数限制了立即数的范围的位数限制了立即数的范围OP#A立即寻址特征立即寻址特征立即数立即数 可正可负可正可负 补码补码形式地址形式地址 A 就是操作数就是操作数返回第17页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(2)直接寻址 (Direct Addressing)EA=A操作数主存主存寻址特征寻址特征LDAAAACC 执行阶段访问一次存储器执行阶段访问一次存储器 A 的位数决定了该指令操作数的寻址范围的位数决定了该指令操作数的寻址范围 操作数的地址不易修改(必须修改操作数的地址不易修改(必须修改A)有效地址由形式地址直接给出有效地址由形式地址直接给出返回第18页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(3)间接寻址(Indirect Addressing)EA=(A)有效地址由形式地址间接提供有效地址由形式地址间接提供OPA寻址特征寻址特征AEA主存主存EAA1EA A1主存主存 EA10 执行指令阶段执行指令阶段 2 次访存次访存 可扩大寻址范围可扩大寻址范围 便于编制程序便于编制程序OPA寻址特征寻址特征A一次间址一次间址多次间址多次间址操作数操作数操作数操作数多次访存多次访存第19页/共144页 子程序子程序主程序主程序8081201202转转 子程序子程序转转 子程序子程序间接寻址编程举例间接寻址编程举例(A)=81(A)=202 间址特征间址特征JMP A 返回第20页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(4)寄存器寻址 (Register Addressing)EA=Ri 执行阶段不访存,只访问寄执行阶段不访存,只访问寄存器,执行速度快存器,执行速度快OPRi寻址特征寻址特征 寄存器个数有限,可缩短指令字长寄存器个数有限,可缩短指令字长操作数R0RiRn寄存器寄存器有效地址即为寄存器编号有效地址即为寄存器编号返回第21页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(5)寄存器间接寻址(Register Indirect Addressing)EA=(Ri)有效地址在寄存器有效地址在寄存器中,中,操作数在存储器操作数在存储器中,执行阶段访存中,执行阶段访存操作数操作数主存主存OPRi寻址特征寻址特征 便于编制循环程序便于编制循环程序地址R0RiRn寄存器寄存器有效地址在寄存器中有效地址在寄存器中返回第22页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(6)基址寻址(Base Addressing)“逻辑地址”是程序员编写程序时使用的地址 “主存物理地址”是程序段/数据段在主存中的实际存放地址程序段/数据段每次装入主存的起始地址是不确定的,每次运行时,某条指令或某个数据的“主存物理地址”也是不确定的但是这条指令或这个数据的“逻辑地址”是固定的第23页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(6)基址寻址(Base Addressing)在处理器内部设置一个专门存放程序段/数据段在主存中起始地址的寄存器,称起始地址为基地址,简称“基址”,称该寄存器为“基址寄存器”。“逻辑地址”与基址寄存器中的值相加即得到指令或数据的“主存物理地址”。指令中给出的“逻辑地址”又称为相对于基址的“位移量”,位移量是一个有符号的整数,常用补码表示。第24页/共144页(1)采用专用寄存器作基址寄存器采用专用寄存器作基址寄存器EA=(BR)+ABR 为基址寄存器为基址寄存器OPA操作数主存主存寻址特征寻址特征ALUBR 可扩大寻址范围可扩大寻址范围 便于程序搬家便于程序搬家 BR 内容由操作系统或管理程序确定内容由操作系统或管理程序确定 在程序的执行过程中在程序的执行过程中 BR 内容不变,形式地址内容不变,形式地址 A 可变可变第25页/共144页(2)采用通用寄存器作基址寄存器采用通用寄存器作基址寄存器操作数主存主存寻址特征寻址特征ALUOPR0AR0 作基址寄存器作基址寄存器 由用户指定哪个通用寄存器作为基址寄存器由用户指定哪个通用寄存器作为基址寄存器通用寄存器R0Rn-1R1 基址寄存器的内容由操作系统确定基址寄存器的内容由操作系统确定 在程序的执行过程中在程序的执行过程中 R0 内容不变,形式地址内容不变,形式地址 A 可变可变返回第26页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 (7)变址寻址(Indexed Addressing)EA=(IX)+AOPA操作数主存主存寻址特征寻址特征ALUIX 可扩大寻址范围可扩大寻址范围 便于处理数组问题便于处理数组问题 IX 的内容由用户给定的内容由用户给定 IX 为变址寄存器为变址寄存器 在程序的执行过程中在程序的执行过程中 IX 内容可变,形式地址内容可变,形式地址 A 不变不变通用寄存器也可以通用寄存器也可以作为变址寄存器作为变址寄存器第27页/共144页例例 设数据块首地址为设数据块首地址为 D,求求 N 个数的平均值个数的平均值直接寻址直接寻址变址寻址变址寻址LDA DADD D+1ADD D+2ADD D+(N-1)DIV#NSTA ANSLDA#0LDX#0INXCPX#NBNE MDIV#NSTA ANS共共 N+2 条指令条指令共共 8 条指令条指令ADD X,DMX 为变址寄存器为变址寄存器D 为形式地址为形式地址(X)和和#N 比较比较(X)+1 X结果不为零则转结果不为零则转返回第28页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51(8)堆栈寻址 SP堆栈指针寄存器 先进后出先进后出(一个入出口)(一个入出口)栈顶地址栈顶地址 由由 SP 指出指出 11FFFH+12000 H进栈进栈 (SP)1 SP出栈出栈 (SP)+1 SP栈顶栈顶栈底栈底2000 HSP2000 H1FFF HSP1FFFH栈顶栈顶栈底栈底进栈进栈出栈出栈 1FFF H栈顶栈顶 2000 H栈顶第29页/共144页15200HACCSPX栈顶栈顶200H栈底栈底主存主存151FFHACCSP15栈顶栈顶200H栈底栈底主存主存X1FFHPUSH A 前前PUSH A 后后POP A 前前POP A 后后Y1FFHACCSPX栈顶栈顶200H栈底栈底主存主存151FFH15200HACCSP栈顶栈顶200H栈底栈底主存主存X15第30页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51 根据堆栈的增长方向分为:递增堆栈(Ascending Stack),也称向上增长堆栈。随着数据的压入,这种堆栈向高地址方向增长;递减堆栈(Descending Stack),也称向下增长堆栈。随着数据的压入,这种堆栈向低地址方向增长。(8)堆栈寻址 第31页/共144页3.1.3 3.1.3 寻址方式寻址方式寻址方式寻址方式-数据寻址数据寻址数据寻址数据寻址 04:51:51根据SP所指示栈顶单元的属性,堆栈也可分为:满堆栈(Full Stack)。SP指示栈顶单元存储的是最后压入数据。空堆栈(Empty Stack)。SP指示栈顶单元用于接收下一个要压入的数据。(8)堆栈寻址 返回第32页/共144页04:51:51例2:某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是 。A2006H B2007H C2008H D2009H例1:偏移寻址通过将某个寄存器内容与一个形式地址相加而生成有效地址。下列寻址方式中,不属于偏移寻址的是 。A.间接寻址 B.基址寻址 C.相对寻址 D.变址寻址返回第33页/共144页3.1.4 指令的基本功能 04:51:51(1)算术/逻辑/移位指令(算逻指令)(2)数据传送指令(数传指令)(3)控制转移指令(4)输入/输出指令(5)处理器控制及调试指令返回首页第34页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(1)算逻指令n定点加法指令ADDn定点减法指令SUBn定点乘法指令MULn定点除法指令DIVn加1指令INCn减1指令DECn比较指令CMPn浮点加法指令ADDFn浮点减法指令SUBFn浮点乘法指令MULFn浮点除法指令DIVFn十进制数算术运算指令影响处理器状态标志位算术指令返回首页第35页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(1)算逻指令n“与”运算指令ANDn“或”运算指令ORn“非”运算指令NOTn“异或”运算指令XORn位测试n位清除n位求反 n算术左移指令n算术右移指令n逻辑左移指令n逻辑右移指令n带进位循环左移指令n不带进位循环左移指令n带进位循环右移指令n不带进位循环右移指令逻辑指令移位指令返回首页第36页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(2)数传指令根据数据的流向分:n寄存器与寄存器之间的数据传送n寄存器与主存储器单元之间的数据传送n寄存器与堆栈之间的数据传送n堆栈与主存储器单元之间的数据传送n内存单元与内存单元之间的数据传送返回首页第37页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(2)数传指令根据传输的功能分:一般传送、堆栈操作、数据交换n一般传送指令 实现数据复制功能,即把源操作数的内容写入目的操作数。其汇编语言助记符通常为MOV。LOAD:内存 寄存器STORE:寄存器 内存返回首页第38页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(2)数传指令根据传输的功能分:n堆栈操作指令1.压入栈顶PUSH2.弹出栈顶POP PUSH的源操作数和POP指令的目的操作数,一般是寄存器号,也可能是主存储器单元地址.返回首页第39页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(2)数传指令n“数据交换指令”实现两个数据的交换如Intel 80 x86中的XCHG指令。源操作数和目的操作数一般都是寄存器,至多允许源操作数是主存储器单元。数据交换指令的执行时间一般较长。返回首页第40页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(3)控制转移指令n跳转指令JUMP (无条件转移)n分支指令(条件转移)n子程序调用CALL/返回指令RETn循环控制指令LOOPn中断系统指令 返回首页第41页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(3)控制转移指令n分支指令 根据特定条件(往往是上一条指令的执行结果),决定程序是顺序执行还是转移到一个新的位置执行,也称条件转移指令。条件转移指令可能依据的条件有:为0、为正/负数、发生进位/借位、为奇数/偶数、发生溢出或以上条件的组合。返回首页第42页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:51(3)控制转移指令n分支指令 条件转移指令又分为“绝对转移”和“相对转移”两种。对于“绝对转移”,当条件满足时,计算机将把该指令中所含操作数的内容直接写入PC中。对于“相对转移”,当条件满足时,计算机将把该指令中所含操作数的内容与PC中的内容相加后,把结果写入PC中。返回首页第43页/共144页04:51:51例3:某机器字长16位,主存按字节编址,转移指令采用相对寻址,由两个字节组成,第一字节为操作码字段,第二字节为相对位移量字段。假定取指令时,每取一个字节PC自动加1。若某转移指令所在主存地址为2000H,相对位移量字段的内容为06H,则该转移指令成功转移后的目标地址是 。A2006H B2007H C2008H D2009H返回首页第44页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52常见的条件转移指令有:n等于零转移BEQn不等于零转移BNEQn小于转移BLSn大于转移BGTn小于等于转移/不大于转移BLEQn大于等于转移/不小于转移BGEQn不带符号小于转移BLSUn不带符号大于转移BGTUn不带符号小于等于转移/不带符号不大于转移BLEQUn不带符号大于等于转移/不带符号不小于转移BGEQUn没有进位转移BCCn有进位转移BCSn没有溢出转移BVCn有溢出转移BVS返回首页第45页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52(3)控制转移指令n子程序调用CALL/返回指令RET 在程序中,有一些具有特定功能的程序段会被反复使用。为了提高程序的可读性、可重用性和可维护性,人们将这样的程序段独立出来,将其定义成一个子程序。返回首页第46页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52n调用子程序的指令格式:CALL Subprogram_Name 功能是,首先把当前程序的断点保存到系统堆栈中,把子程序的入口地址写入PC,从而将程序控制转移至被调子程序。nRET指令的功能是把保存在堆栈中的程序断点弹回到PC之中。返回首页第47页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52(4)输入/输出指令 为了完成主机与外设之间信息交换的各种操作而设置,包括:启动输入/输出设备、停止输入/输出设备、测试输入/输出设备及数据的输入或输出等指令。例如,Intel 80 x86中的输入指令为IN指令,输出指令为OUT指令。返回首页第48页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52(5)处理器控制及调试指令n包括各种设置/清除标志位(如陷阱标志、中断允许标志、处理器工作状态标志位)指令、特权指令、进程同步指令、调试指令、停机指令等。n调试指令用于硬件或软件的调试。硬件调试指令包括钥匙位置、开关状态的读取指令,重要寄存器和主存储器单元内容的显示等。软件调试指令包括断点的设置及跟踪指令,自陷阱指令等。返回首页第49页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52 对于面向多用户系统的处理器,为了保证信息安全,处理器的工作状态被分为核心态(Kernel mode/System mode)和用户态(User mode)。仅能在核心态(也叫管理态/管态)下运行的指令称为特权指令(Privileged instruction)。用户态(也叫目态)下的程序要想执行管态下的功能(由操作系统实现并提供用户使用)必须通过执行“访管指令”来实现。返回首页第50页/共144页3.1.4 3.1.4 指令的基本功能指令的基本功能指令的基本功能指令的基本功能 04:51:52n此外,还有:空操作指令NOP和等待指令WAIT访管指令是一条可以在目态下执行的指令,用户程序中凡是要调用操作系统功能的地方就安排一条访管指令。当执行到访管指令时,处理器就自愿地产生一个中断事件(访管中断),暂停用户程序的执行,陷入管态,让操作系统为用户服务。返回首页第51页/共144页举举 例例例:一条双字长直接寻址的子程序调用指令,其第一个字为操作码和寻址特征,第二个字为地址码5000H。假设PC当前值为2000H,SP的内容为0100H,栈顶内容为2746 H,存储器按字节编址,而且进栈操作是先执行(SP)-SP,后存入数据。试可答下列几种情况下,PC,SP及栈顶内容各为多少?(1)CALL指令被读取前。(2)CALL指令被执行后。(3)子程序返回后。返回首页第52页/共144页解:(1)CALL指令被读取前,PC=2000H,SP=0100H,栈顶内容为2746H(2)CALL指令被读取后,PC=2004CALL指令被执行后,PC=5000HSP=00FEH 栈顶内容为2004H(3)子程序返回后PC=2004H,SP=0100H,栈顶内容为2746H返回首页第53页/共144页3.1.5 3.1.5 指令的格式指令的格式指令的格式指令的格式 04:51:52 涉及指令的操作码长度、指令“地址制”及采用的寻址方式、指令长度等问题。返回首页第54页/共144页3.1.5 3.1.5 指令的格式指令的格式指令的格式指令的格式 04:51:52(1)指令操作码的长度有定长和不定长两种选择 选择定长的操作码可以简化指令译码器的设计与实现;选择不定长操作码(也称扩展操作码)可使常用指令拥有较短的操作码而不常用指令拥有较长的操作码(即哈夫曼压缩编码),从而压缩程序所占的存储空间。返回首页第55页/共144页3.1.5 3.1.5 指令的格式指令的格式指令的格式指令的格式 04:51:52(2)在一条指令中出现几个操作数地址,这是指令的“地址制”所要解决的问题。一般情况下,指令中地址的个数,可以取4,3,2,1,0个。返回首页第56页/共144页(1)四地址四地址(2)三地址三地址OP A1 A2 A3 A48 6 6 6 6A1 第一操作数地址第一操作数地址A2 第二操作数地址第二操作数地址A3 结果的地址结果的地址A4 下一条指令地址下一条指令地址若若 PC 代替代替 A4(A1)OP(A2)A38 8 8 8 OP A1 A2 A3(A1)OP(A2)A34 次访存次访存4 次访存次访存寻址范围寻址范围 26=64寻址范围寻址范围 28=256若若 A3 用用 A1 或或 A2 代替代替设指令字长为设指令字长为 32 位位操作码固定为操作码固定为 8 位位第57页/共144页(3)二地址二地址OP A1 A28 12 12(A1)OP(A2)A1(A1)OP(A2)A2或或4 次访存次访存若若ACC 代替代替 A1(或或A2)若结果存于若结果存于 ACC (4)一地址一地址(5)零地址零地址OP A18 24无地址码无地址码(ACC)OP(A1)ACC2 次访存次访存寻址范围寻址范围 212=4 K寻址范围寻址范围 224=16 M 3次访存次访存第58页/共144页3.1.5 3.1.5 指令的格式指令的格式指令的格式指令的格式 04:51:52n“地址制”设计或改进的目的是为了压缩指令长度,缩短指令的执行时间。n同一条指令中不同操作数可采用不同的寻址方式 例如,一条指令中的操作数可以都存放在寄存器里,也可以把一个操作数存放在寄存器里,而另一个操作数存放在主存里。返回首页第59页/共144页3.1.5 3.1.5 指令的格式指令的格式指令的格式指令的格式 04:51:52n指令长度可以是固定或变化的。固定长度的指令便于指令的存取和译码,但会限制操作数个数的增加和复杂寻址方式的使用;而变化长度的指令的特点正好相反。n例如,IBM S/370指令采用定长的8位操作码,有单地址、两地址和三地址三种地址制,不同的操作数可以采用不同的寻址方式,指令字长有16位、32位和48位三种。返回首页第60页/共144页例例1 某机某机16位字长指令格式如下位字长指令格式如下,试问:试问:5 3 8A为形式地址,补码表示(包括一位符号位)。为形式地址,补码表示(包括一位符号位)。M为为寻址模式。寻址模式。1、该指令格式能定义多少种不同的操作。、该指令格式能定义多少种不同的操作。2、立即寻址操作数的范围是多少?、立即寻址操作数的范围是多少?3、写出各种寻址方式计算有效地址、写出各种寻址方式计算有效地址EA的表达式。的表达式。4、直接寻址(此时、直接寻址(此时A视为无符号数)、间接寻址视为无符号数)、间接寻址能寻址的能寻址的 主存地址空间为多少?(主存容量为主存地址空间为多少?(主存容量为64K)OPMA1、322、256(-128127)4、256,64K指令格式设计举例返回首页第61页/共144页 指令格式举例指令格式举例一、设计指令格式时应考虑的各种因素一、设计指令格式时应考虑的各种因素1.指令系统的指令系统的 兼容性兼容性(向上兼容)(向上兼容)2.其他因素其他因素操作类型操作类型数据类型数据类型指令格式指令格式包括指令个数及操作的难易程度包括指令个数及操作的难易程度指令字长、操作码位数指令字长、操作码位数地址码位数、地址个数地址码位数、地址个数寻址方式、操作码长度寻址方式、操作码长度返回首页寻址方式寻址方式寄存器个数寄存器个数第62页/共144页第第第第3 3章章章章 处理器处理器处理器处理器3.1 处理器的指令集 04:51:523.1.1 概述 3.1.2 指令的操作码与操作数3.1.3 寻址方式3.1.4 指令的基本功能 3.1.5 指令的格式3.1.6 面向多媒体处理的增强指令 返回首页第63页/共144页指令格式设计举例指令格式设计举例 例2 某机器字长16位,存储器直接寻址空间为128字,变址时的位移量为-6463,16个通用寄存器均可作为变址寄存器。设计一套指令系统格式,满足下列寻址类型的要求。(1)零地址指令。(2)直接寻址的一地址指令。(3)寄存器寻址的二地址指令。(4)变址寻址的一地址指令。(5)直接寻址的二地址指令。若安排寄存器寻址的一地址指令?返回首页第64页/共144页返回首页第65页/共144页指令设计举例指令设计举例例3某模型机共有64种操作,操作码位数固定,且具有以下特点。(1)采用一地址或二地址格式。(2)有寄存器寻址、直接寻址和相对寻址(位移量为-128+127)三种寻址方式。(3)有16个通用寄存器,算术运算和逻辑运算的操作数均在寄存器中,结果也在寄存器中。(4)取数/存数指令在通用寄存器和存储器之间传送数据(5)存储器容量为1 MR,按字节编址。返回首页第66页/共144页3.2.1 处理器的基本功能和基本组成u1处理器概述u外观触点阵列LGA封装04:51:52返回首页第67页/共144页3.2.1 处理器的基本功能和基本组成u信息传输u片内总线:处理器内部各个单元之间信号传输的线路。片内控制总线和片内数据总线u片外总线:用于实现处理器与主存储器和输入/输出设备之间信号传输的线路 04:51:52返回首页第68页/共144页3.2.1 处理器的基本功能和基本组成u外部引脚u电源引脚(Vcc)和接地引脚(GND)u数据总线引脚 D15D0u地址总线引脚 A31A0u控制总线引脚u时钟CLK、复位RESET、总线请求HRQ、总线允许HLDA、中断请求INTR、中断响应INTA、读RD、写WR04:51:52返回首页第69页/共144页3.2.1 处理器的基本功能和基本组成2处理器的基本功能p 取指令 p 分析指令p 取数据p 处理数据p 写回结果04:51:52返回首页第70页/共144页3.2.1 处理器的基本功能和基本组成取指令处理器根据PC给出的主存地址访问主存储器,取出一个标准字长的指令,将其送入处理器内部专门存放当前指令的指令寄存器 IRPC加1分析指令将IR中的操作码部分取出送入指令译码器(Decoder)进行译码。根据译码结果判断出指令的功能、操作数的寻址方式以及操作数的数据类型,形成源操作数或目的操作数的物理地址。04:51:52返回首页第71页/共144页3.2.1 处理器的基本功能和基本组成取数据根据源操作数的物理地址访问主存,取出源操作数。源操作数将被送入处理器内部的数据寄存器处理数据处理器将源操作数送入运算器,并根据指令译码结果启动运算器的相应操作对数据进行处理。处理结果存回通用数据寄存器。写回结果如果指令要求将结果写回主存,那么处理器将根据目的操作数的地址,将目的操作数写入主存04:51:52返回首页第72页/共144页3.2.1 处理器的基本功能和基本组成3处理器的基本组成算术逻辑单元ALU04:51:52返回首页第73页/共144页3.2.1 处理器的基本功能和基本组成控制单元CU通过对指令的分析(译码),按照一定的时序,发出控制信号,使CPU在控制信号的驱动下,完成相应指令的功能寄存器用户可见的寄存器:通用数据寄存器、基址寄存器、变址寄存器、FR、PC用户透明的寄存器:MAR和MDR04:51:53返回首页第74页/共144页3.2.1 处理器的基本功能和基本组成中断中断:指计算机在执行程序的过程中,当出现异常情况或特殊请求时,计算机会在适当时机暂停现行程序的运行,转向执行处理这些异常情况或特殊请求的程序,处理结束后再返回到现行程序的间断处继续执行能够发出中断请求的部件或事件,称为“中断源”。为了区分不同请求信号,不同的中断源被赋予了一个不同的“中断类型号”中断相应时间:指令周期结束处理器信号:INTR和INTA04:51:53返回首页第75页/共144页04:51:533.2.1 处理器的基本功能和基本组成返回首页第76页/共144页04:51:533.2.1 处理器的基本功能和基本组成返回首页第77页/共144页04:51:543.2.2 3.2.2 计算机的工作过程计算机的工作过程p指令周期:处理器每取出并执行一条指令所需的全部时间u“取指”将指令从主存取入到处理器中u“执行”指令译码并完成其指定的操作返回首页第78页/共144页04:51:54 有的指令采用间接寻址。为了取到操作数,在取指周期之后还有一个访问主存,读取操作数地址的周期,这个周期就是间址周期。3.2.2 3.2.2 计算机的工作过程计算机的工作过程返回首页第79页/共144页3.2.2 3.2.2 计算机的工作过程计算机的工作过程p 不同指令所完成的功能不同,它们的指令周期也不尽相同u无条件转移指令“JUMP TARGET”u空操作指令NOPu加法指令“ADD X”u乘/除法指令04:51:54返回首页第80页/共144页3.2.2 3.2.2 计算机的工作过程计算机的工作过程机器周期是所有指令执行过程中的一个基准时间。通常选取处理器访问一次主存的时间(也称主存周期)作为机器周期一个机器周期内又包含了若干时钟周期(也称节拍)04:51:54返回首页第81页/共144页04:51:54n为了实现各种操作的时序控制,在处理器内部专门设置有时钟部件。n指令周期、机器周期和节拍的关系如下图所示。3.2.2 3.2.2 计算机的工作过程计算机的工作过程返回首页第82页/共144页04:51:54 下面以计算 X+Y 为例来编制控制计算机/处理器工作的程序。(1)从内存单元X中取数据送入累加器ACC;(2)ACC加上内存单元Y中的数据,结果存回ACC中;(3)ACC的值存入内存单元Z中;(4)停机。3.2.2 3.2.2 计算机的工作过程计算机的工作过程返回首页第83页/共144页指令名称指令名称助记符助记符指指 令令 功功 能能操作码操作码指令操作数指令操作数数据读入数据读入LOAD将将某某个个内内存存单单元元X中中的的数数 据据 取取 出出 并并 送送 入入ACC0001B内存单元内存单元X的地址的地址加加 法法ADDACC加加上上内内存存单单元元Y中中的的数数据据,结结果果存存回回ACC中中0010B内存单元内存单元Y的地址的地址数据存回数据存回STORE将将ACC的的值值存存入入内内存存单单元元Z中中0011B内存单元内存单元Z的地址的地址停停 机机HALT停止处理器工作停止处理器工作1000B无操作数无操作数04:51:54 此程序在某模型机上运行,用到的指令如下:3.2.2 3.2.2 计算机的工作过程计算机的工作过程返回首页第84页/共144页04:51:54主存单元地址主存单元地址汇编程序汇编程序指令操作码指令操作码指令操作数指令操作数1000BLOAD X0001B1100B1001BADD Y0010B1101B1010BSTORE Z0011B1110B1011BHALT1000B1100BX0000B0001B1101BY0000B0010B1110BZ程序存入主存的结果如下,其中分配给变量X,Y和Z的内存单元地址是1100B、1101B和1110B。返回首页第85页/共144页04:51:54LOAD X取指周取指周期期T1将将PC中中内内容容送送MAR,MAR把把它它的内容送到地址总线上的内容送到地址总线上T 2处理器发出处理器发出“读读”命令信号命令信号T 3数据总线上的内容送入数据总线上的内容送入MDRT 4MDR的内容送到的内容送到IR,进行译码,进行译码执行周执行周期期T 1IR中中的的操操作作数数部部分分送送入入MAR,MAR的内容送到地址总线上的内容送到地址总线上T 2处理器发出处理器发出“读读”命令信号命令信号T 3

    注意事项

    本文(计算机软件及应用计算机组成原理.pptx)为本站会员(莉***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开