您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 计算机组成原理11-14
计算机组成原理SWPU1第一章概论计算机的诞生和发展1.1计算机系统的组织1.2计算机的特点与性能1.3计算机的基本概念1.41、信息如何表示,才能被计算机识别?2、采用什么工作方式,才能使计算机自动地对信息进行处理?3、采用什么部件,使计算机完成相应的功能?1.1计算机的基本概念计算机组成原理SWPU3计算机之父:冯•诺依曼美籍匈牙利人JohnvonNeumann1.1.1计算机与诺依曼体制冯·诺依曼体制计算机:按存储方式工作的计算机统称为冯·诺依曼体制计算机。1946年6月由冯·诺依曼等人首次提出。计算机的体系结构发生了许多变化,但冯·诺依曼提出的二进制、程序存储和程序控制,依然是普遍遵循的原则。计算机组成原理SWPU41.1.1计算机与诺依曼体制冯·诺依曼体制的主要思想1.采用二进制代码表示数据和指令。2.采用存储程序工作方式(核心)。3.计算机硬件系统由五大部件构成。(运算器、存储器、控制器、输入设备和输出设备)计算机组成原理SWPU5将程序存储于计算机的存储器中事先编制程序运行时自动、连续地从存储器中依次取出指令并执行程序员存储器计算机1.1.2存储程序工作方式冯·诺依曼结构计算机采用存储程序工作方式:任何要计算机完成的工作都要先被编写成程序,然后将程序和原始数据送入主存并启动执行。一旦程序被启动,计算机应能在不需操作人员干预下,自动完成逐条取出指令和执行指令的任务。冯·诺依曼结构是怎样的?应该有个主存,用来存放程序和数据应该有一个自动逐条取出指令的部件还应该有具体执行指令(即运算)的部件程序由指令构成指令描述如何对数据进行处理应该有将程序和原始数据输入计算机的部件应该有将运算结果输出计算机的部件你还能想出更多吗?IAS计算机结构西南石油大学SWPU冯·诺依曼计算机硬件框图7算术运算逻辑运算存放数据和程序将信息转换成机器能识别的形式将结果转换成人们熟悉的形式控制程序运行存储器输入设备运算器控制器输出设备实线为数据线虚线为控制线和反馈线西南石油大学SWPU冯·诺依曼计算机的特点81.计算机由五大部件组成3.指令和数据用二进制表示4.指令由操作码和地址码组成6.以运算器为中心2.指令和数据以同等地位存于存储器可按地址寻访5.存储程序5.存储程序缺点:串行处理的工作机制(即逐条执行指令序列)计算机组成原理SWPU9控制信息计算机中的信息数据信息控制信息:控制信号(微命令)序列,控制计算机的工作。数据信息:计算机加工处理的对象,分为数值型和非数值型。信息的数字化表示包含两层含义:用数字代码表示各种信息用数字信号表示数字代码1.1.3信息的数字化表示(P21.1.1)计算机组成原理SWPU10一、用数字代码表示各种信息二进制代码例1用数字代码表示数据5-5表示为00000101表示为100001011.1.2信息的数字化表示计算机组成原理SWPU11例2用数字代码表示字符(ASCII码)AB表示为100000141H表示为100001042H例3用数字代码表示命令、状态启动停止正在工作工作结束表示为00表示为01表示为10表示为111.1.2信息的数字化表示12表示为011000131H表示为011001032H信息的数字化声音文字图像指令这些信息如何表示?计算机组成原理SWPU13二、在物理机制上用数字信号表示数字代码数字型电信号例1用电平信号表示数字代码高电平1低电平0并行传送信息1.1.2信息的数字化表示1011计算机组成原理SWPU14二、在物理机制上用数字信号表示数字代码数字型电信号例2用脉冲信号表示数字代码有脉冲无脉冲有脉冲101串行传送信息1.1.2信息的数字化表示10110计算机组成原理SWPU15三.用数字化方法表示信息的主要优点(1)在物理上容易实现信息的表示与存储(2)抗干扰能力强,可靠性高(3)数值的表示范围大,表示精度高(4)表示的信息类型极其广泛(5)能用数字逻辑技术进行信息处理1.1.2信息的数字化表示计算机组成原理SWPU16第一章概论计算机的诞生和发展1.1计算机系统的组织1.2计算机的特点与性能1.3计算机的基本概念1.4计算机组成原理SWPU171.3.1计算机硬件系统1.3.2计算机软件系统1.3.3系统组成的层次结构1.3.4硬件、软件的逻辑等价计算机系统的组织1.3计算机系统的组织计算机组成原理SWPU18计算机系统软件硬件硬件“看得见、摸得着”的物理载体软件程序及其配套的数据、文档等1.2计算机系统的组织计算机组成原理SWPU19ALU主存缓存Cache辅存CPU主机I/O硬件CU存储器输入设备运算器输出设备控制器ALUCPU主机I/OCU主存一、常见计算机硬件系统组成1.3.1硬件系统计算机组成原理SWPU20(1)以总线为基础的系统结构(单总线结构)总线:一组连接多个部件分时共享的信息传输线。地址总线:用于传输地址信息,比如:CPU发向主存、外设等。数据总线:双向的多根信号线,用于传输数据信息。控制总线:传输控制信息,包括CPU送出的控制命令和主存(或外设)返回CPU的反馈信号。何谓I/O接口?二.典型的硬件系统结构计算机组成原理SWPU21(2)采用通道的大型系统结构在系统连接上分为四级:主机、通道、设备控制器、外部设备。第四级第三级第二级主存CPU通道通道设备控制器设备控制器设备控制器设备控制器外设外设外设外设外设外设外设外设主机…………………第一级二.典型的硬件系统结构多ALU多存储体交叉访问计算机组成原理SWPU22(2)采用IOP的大型系统结构(双总线结构)_补充CPUM接口I/OIOPLM接口I/O系统总线I/O总线2.典型的硬件系统结构计算机组成原理SWPU23CPULM共享存储器I/OI/O...(3)多机系统紧偶合系统CPULM...结构特点:通过总线或交叉开关矩阵进行多机互连,通过共享存储器实现多机之间的信息交换2.典型的硬件系统结构处理单元1处理单元n计算机组成原理SWPU24CPULMCASCASI/OI/O(3)多机系统松偶合系统LMCPUMTS消息传送系统局部总线局部总线结构特点:通过MTS(通信总线或互联网络)连接各节点,节点之间以中断方式传送信息包。2.典型的硬件系统结构节点1节点n计算机组成原理SWPU251.3.2计算机的软件系统软件操作系统语言处理程序数据库管理系统服务性程序(编辑、调试、诊断)网络软件系统软件应用软件Office防毒/杀毒软件QQ各类游戏影音播放器……计算机组成原理SWPU26硬件系统软件1.3.3计算机系统的层次应用软件计算机组成原理SWPU27一、从硬、软组成角度划分的层次结构模型传统机器级(指令系统)微程序级(微程序控制器)逻辑部件级(硬件逻辑部件)操作系统级(操作系统)语言处理程序(解释、编译)应用程序(软件资源)用户程序级(用户程序)系统分析级(数学模型、算法)1.3.3系统组成的层次结构硬件部分软件部分软硬界面自下而上计算机系统的逐级生成过程自上而下应用计算机求解问题的过程计算机组成原理SWPU28自下而上的设计、分析方法传统机器级(指令系统)微程序级(微程序控制器)逻辑部件级(硬件逻辑部件)操作系统级(操作系统)语言处理程序(解释、编译)应用程序(软件资源)用户程序级(用户程序)系统分析级(数学模型、算法)1.2.3系统组成的层次结构设置硬核的依据软件设计的源头自上而下的设计、分析方法设计算法编写源程序操作系统调度下生成目标程序机器语言硬件执行程序计算机系统抽象层的转换程序执行结果不仅取决于算法、程序编写而且取决于语言处理系统操作系统ISA微体系结构不同计算机课程处于不同层次必须将各层次关联起来解决问题功能转换:上层是下层的抽象,下层是上层的实现底层为上层提供支撑环境!最高层抽象就是点点鼠标、拖拖图标、敲敲键盘,但这背后有多少层转化啊!计算机系统的不同用户最终用户工作在由应用程序提供的最上面的抽象层系统管理员工作在由操作系统提供的抽象层应用程序员工作在由语言处理系统(主要有编译器和汇编器)的抽象层语言处理系统建立在操作系统之上系统程序员(实现系统软件)工作在ISA层次,必须对ISA非常了解编译器和汇编器的目标程序由机器级代码组成操作系统通过指令直接对硬件进行编程控制ISA处于软件和硬件的交界面(接口)ISA是对硬件的抽象所有软件功能都建立在ISA之上举例说明,你在什么情况(或环境)下是最终用户、系统管理员、应用程序员和系统程序员?计算机组成原理SWPU31二、从语言功能角度划分层次结构机器语言(面向机器)→汇编语言(面向机器)→高级语言(面向用户)1.2.3系统组成的层次结构专用语言虚拟机高级语言虚拟机汇编语言虚拟机实际机器(机器语言物理机)程序用机器语言编写程序,并记录在纸带或卡片上用机器语言编写程序穿孔表示0,未穿孔表示10:010101101:001001002:……3:……4:011001115:……6:……假设:0010-jxx若在第4条指令前加入指令,则需重新计算地址码(如jxx的目标地址),然后重新打孔。不灵活!书写、阅读困难!太原始了,无法忍受,咋办?用符号表示而不用0/1表示!输入:按钮、开关;输出:指示灯等所有信息都是0/1序列!若用符号表示跳转位置和变量位置,是否简化了问题?于是,汇编语言出现用助记符表示操作码用标号表示位置用助记符表示寄存器…..用汇编语言开发程序0:010101101:001001002:……3:……4:011001115:……6:……7:……addBjxxL0…………L0:subC……B:……C:……在第4条指令前加指令时不用改变add、jxx和sub指令中的地址码!你认为用汇编语言编写的优点是:不会因为增减指令而需要修改其他指令不需记忆指令码,编写方便可读性比机器语言强不过,这带来新的问题,是什么呢?人容易了,可机器不认识这些指令了!需将汇编语言转换为机器语言!用汇编程序转换汇编语言源程序由汇编指令构成你能用一句话描述什么是汇编指令吗?用助记符和标号来表示的指令(与机器指令一一对应)指令又是什么呢?包含操作码和操作数或其地址码(机器指令用二进制表示,汇编指令用符号表示)只能描述:取(或存一个数)两个数加(或减、乘、除、与、或等)根据运算结果判断是否转移执行想象用汇编语言编写复杂程序是怎样的情形?(例如,用汇编语言实现排序(sort)、矩阵相乘)需要描述的细节太多了!程序会很长很长!而且在不同结构的机器上就不能运行!进一步认识机器级语言addBjxxL0…………L0:subC……B:……C:……机器语言和汇编语言都是面向机器结构的语言,故它们统称为机器级语言结论:用汇编语言比机器语言好,但是,还是很麻烦!用高级语言开发程序随着技术的发展,出现了许多高级编程语言它们与具体机器结构无关面向算法描述,比机器级语言描述能力强得多高级语言中一条语句对应几条、几十条甚至几百条指令有“面向过程”和“面向对象”的语言之分处理逻辑分为三种结构•顺序结构、选择结构、循环结构有两种转换方式:“编译”和“解释”•编译程序(Complier):将高级语言源程序转换为机器级目标程序,执行时只要启动目标程序即可•解释程序(Interpreter):将高级语言语句逐条翻译成机器指令并立即执行,不生成目标文件。现在,几乎所有程序员都用高级语言编程,但最终要将高级语言转换为机器语言程序计算机组成原理SWPU36从语言功能划分的层次结构高级语言:用编译程序翻译成汇编语言程序虚拟机器M3汇编语言:用汇编程序翻译成机器语言程序虚拟机器M2操作系统:用机器语言解释操作系统虚拟机器机器语言:用微指令解释机器指令实际机器M1由硬件直接执行微指令微程序机器M01.3.3系统组成的层次结构软件硬件不同层次语言之间的等价转换每条指令由操作码和若干地址码组成任何高级语言程序最终通过执行若干条指令来完成!开发和运行程序需什么支撑?最早的程序开发很简单(怎样简单?)直接输入指令和数据,启动后把第一条指令地址送PC开始执行用高级语言开发程序需
本文标题:计算机组成原理11-14
链接地址:https://www.777doc.com/doc-2044046 .html