计算机系统结构(第5讲)

上传人:xian****812 文档编号:324057523 上传时间:2022-07-12 格式:PPT 页数:109 大小:329KB
返回 下载 相关 举报
计算机系统结构(第5讲)_第1页
第1页 / 共109页
计算机系统结构(第5讲)_第2页
第2页 / 共109页
计算机系统结构(第5讲)_第3页
第3页 / 共109页
计算机系统结构(第5讲)_第4页
第4页 / 共109页
计算机系统结构(第5讲)_第5页
第5页 / 共109页
点击查看更多>>
资源描述

《计算机系统结构(第5讲)》由会员分享,可在线阅读,更多相关《计算机系统结构(第5讲)(109页珍藏版)》请在金锄头文库上搜索。

1、计算机系统结构(第5讲)计算机系统结构第一章 基本概念第二章 指令系统第三章 存储系统第四章 输入输出系统第五章 标量处理机第六章 向量处理机第七章 互连网络第八章 并行处理机和 多处理机第二章指令系统指令系统是计算机系统结构的主要组成部分指令系统是软件与硬件分界面的一个主要标志指令系统是软件与硬件之间互相沟通的桥梁指令系统与软件之间的语义差距越来越大第二章指令系统2.1 数据表示2.2 寻址技术2.3 指令格式的优化设计2.4 指令系统的功能设计2.5 RISC指令系统2.1 数据表示新的研究成果,如浮点数基值的选择方法新的数据表示方法,如自定义数据表示2.1.1 数据表示与数据类型2.1.

2、2 浮点数的设计方法2.1.3 自定义数据表示2.1.1 数据表示与数据类型数据表示的定义:数据表示是指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型。定点、逻辑、浮点、十进制、字符、字符串、堆栈和向量数据类型:文件、图、表、树、阵列、队列、链表、栈、向量、串、实数、整数、布尔数、字符等。确定哪些数据类型用数据表示实现,是软件与硬件的取舍问题。确定数据表示的原则:1.缩短程序的运行时间2.减少CPU与主存储器之间的通信量3.这种数据表示的通用性和利用率数据表示在不断发展如:矩阵、树、图、表及自定义数据表示等2.1.2 浮点数的设计方法1、浮点数的表示方式一个浮点数N可以用如下方式

3、表示:需要有6个参数来定义。两个数值:m:尾数的值,包括尾数的码制(原码或补码)和数制(小数或整数)e:阶码的值,移码(偏码、增码、译码、余码等)或补码,整数1.原码、反码、补码(1)x=+10101(2)x=-10101x原=010101 x原=110101x反=010101 x反=101010 x补=010101 x补=101011结论1:对于正数来说,x原=x反=x补即符号位为零,后面加上x的真值。结论2:对于负数来说,x原=1+x的真值x反=1+x的真值的每一位求反x补=1+x的真值的每一位求反,最后一位加12.移码十进制值 补码移码十进制值补码移码+701111111-1111101

4、11+601101110-211100110+501011101-311010101+401001100-411000100+300111011-510110011+200101010-610100010+100011001-710010001000001000-810000000由x补得到x移的方法是变x补的符号位为其反码。最高一位为符号位,1代表正号,0代表负号。3浮点数的规格化同一个浮点数的表示不是唯一的。0.5可表示为0.05*101,50*10-2尾数用原码表示,最高位不等于零,称之为规格化数。尾数用补码表示,最高位与符号位不等,称之为规格化数。尾数的符号位表示整个数的正负。阶码的符

5、号位表示把尾数扩大(缩小)N倍。2.1.2 浮点数的设计方法1、浮点数的表示方式一个浮点数N可以用如下方式表示:需要有6个参数来定义。两个数值:m:尾数的值,包括尾数的码制(原码或补码)和数制(小数或整数)e:阶码的值,移码(偏码、增码、译码、余码等)或补码,整数两个基值:rm:尾数的基值,2进制、4进制、8进制、16进制和10进制等re:阶码的基值,通常为2两个字长:p:尾数长度,当rm16时,每4个二进制位表示一位尾数q:阶码长度,阶码部分的二进制位数p和q均不包括符号位浮点数的存储式注:mf为尾数的符号位,ef为阶码的符号位,e为阶码的值,m为尾数的值。2、浮点数的表数范围尾数为原码、小

6、数,阶码用移码、整数时,规格化浮点数N的表数范围:1位1位q位p位mfefem尾数为补码,而负数区间的表数范围为:浮点数在数轴上的分布情况例2.1:p23,q7,rmre2,尾数用原码、小数表示,阶码用移码、整数表示,求规格化浮点数N的表数范围。上溢上溢下溢(浮点零)NminNmax-NmaxNmin0负数区正数区解:规格化浮点数N的表数范围是:例2.3:尾数用补码、小数表示,阶码用移码、整数表示,p6,q6,rm16,re2,求规格化浮点数N表数范围解:规格化浮点数N在正数区间的表数范围是:在负数区间的表数范围是:6、浮点数格式的设计定义浮点数表示方式的6个参数的确定原则:尾数:多数机器采用

7、原码、小数表示。采用原码制表示:加减法比补码表示复杂,乘除法比补码简单,表示非常直观。采用小数表示能简化运算,特别是乘除法运算。阶码:一般机器都采用整数、移码表示。采用移码表示的主要原因是:浮点0与机器0一致。阶码进行加减运算时,移码的加减法运算要比补码复杂尾数的基值rm选择2,阶码的基值re取2,浮点数格式设计的关键问题是:在表数范围和表数精度给定的情况下,如何确定最短的尾数字长p和阶码字长q例2.5:要求设计一种浮点数格式,其表数范围不小于1037,正、负数对称,表数精度不低于10-16。解:根据表数范围的要求:解这个不等式:取阶码字长q7根据表数精度的要求,得到:解这个不等式:由于浮点数

8、的字长通常为8的倍数,因此,取尾数字长p55,总的字长为1+1+7+55=64,浮点数格式如下:1位1位7位55位mfefem所设计浮点数格式的主要性能如下:最大尾数值:绝对值最小的尾数值:最大阶码:最小阶码:最大正数:最小正数:最大负数:最小负数:表数精度:浮点零:浮点零与机器零相同,64位全为0表数效率:采用隐藏位,表数效率=100%练习题:2.2 2.3 2.5 2.6 2.102.14 2.15计算机系统结构(第6讲)第二章指令系统2.1 数据表示2.2 寻址技术2.3 指令格式的优化设计2.4 指令系统的功能设计2.5 RISC指令系统2.2 寻址技术寻找操作数及其他信息的地址的技术

9、称为寻址技术内容:编址方式、寻址方式和定位方式对象:寄存器、主存储器、堆栈和输入输出设备方法:分析各种寻址技术的优缺点,如何选择和确定寻址技术2.2.1 编址方式 2.2.2 寻址方式2.2.3 定位方式重点是寻址方式的选择方法2.2.1 编址方式编址方式是指对各种存储设备进行编码的方法。主要内容:编址单位、零地址空间个数、并行存储器的编址技术、输入输出设备的编址技术1、编址单位常用的编址单位:字编址、字节编址、位编址、块编址等编址单位与访问字长一般:字节编址,字访问部分机器:位编址,字访问辅助存储器:块编址字节编址字访问的优缺点有利于信息处理地址信息浪费、存储器空间浪费读写逻辑稍复杂0字节位

10、置引起的问题2、零地址空间个数三个零地址空间:通用寄存器、主存储器和输入输出设备均独立编址两个零地址空间:主存储器与输入输出设备统一编址一个零地址空间:所有存储设备统一编址,最低端是通用寄存器,最高端是输入输出设备,中间为主存储器隐含编址方式,实际上没有零地址空间:堆栈、Cache等3、输入输出设备的编址一台设备一个地址一台设备两个地址:数据寄存器、状态或控制寄存器多个需要编址的寄存器共用同一个地址的方法:依靠地址内部来区分,适用于被编址的接口寄存器的长度比较短。“下跟法”隐含编址方式,必须按顺序读写寄存器。一台设备多个地址。对编程增加困难4、并行存储器的编址技术高位交叉编址主要目的是用来扩大

11、存储器容量。低位交叉编址主要目的是提高存储器速度。2.2.2 寻址方式寻址方式:寻找操作数及数据存放单元的方法。主要内容:设计思想和设计方法1、寻址方式的设计思想立即数寻址方式用于数据比较短、源操作数面向寄存器的寻址方式OPCROPCR,ROPCR,R,ROPCR,M面向主存储器的寻址方式:OPCMOPCM,MOPCM,M,M面向堆栈的寻址方式:OPCOPCM2、间接寻址方式与变址寻址方式的比较目的相同:都是为了解决操作数地址的修改问题都能做到不改变程序而修改操作数地址原则上,一种处理机中只需设置间址寻址方式与变址寻址方式中的任何一种即可,有些处理机两种寻址方式都设置如何选取间址寻址方式与变址

12、寻址方式?优缺点怎样?例2.7:一个由N个元素组成的数组,已经存放在起始地址为AS的主存连续单元中,现要把它搬到起始地址为AD的主存连续单元中。不必考虑可能出现的存储单元的重叠问题。为了编程简单,采用一般的两地址指令编写程序。解:用间接寻址方式编写程序如下:start:move asr,asi;保存源数组的起始地址move adr,adi;保存目标数组起始地址move num,cnt;保存数据的个数loop:move asi,adi;用间址寻址方式传送数据incasi;源数组的地址增量incadi;目标数组的地址增量deccnt;个数减1bgtloop;测试n个数据是否传送完halt;停机as

13、r:as;源数组的起始地址adr:ad;目标数组的起始地址num:n;需要传送的数据个数asi:0;当前正在传送的源数组地址都能做到不改变程序而修改操作数地址原则上,一种处理机中只需设置间址寻址方式与变址寻址方式中的任何一种即可,有些处理机两种寻址方式都设置如何选取间址寻址方式与变址寻址方式?优缺点怎样?例2.7:一个由N个元素组成的数组,已经存放在起始地址为AS的主存连续单元中,现要把它搬到起始地址为AD的主存连续单元中。不必考虑可能出现的存储单元的重叠问题。为了编程简单,采用一般的两地址指令编写程序。解:用间接寻址方式编写程序如下:start:move asr,asi;保存源数组的起始地址

14、move adr,adi;保存目标数组起始地址move num,cnt;保存数据的个数loop:move asi,adi;用间址寻址方式传送数据incasi;源数组的地址增量incadi;目标数组的地址增量deccnt;个数减1bgtloop;测试n个数据是否传送完halt;停机asr:as;源数组的起始地址adr:ad;目标数组的起始地址num:n;需要传送的数据个数asi:0;当前正在传送的源数组地址adi:0;当前正在传送的源数组地址cnt:0;剩余数据的个数用变址寻址方式编写程序如下:start:move as,x;源数组起址送变址寄存器move num,cnt;保存数据个数,保证再入

15、性loop:move(x),ad-as(x);ad-as位地址偏移量,;在汇编时计算incx;增量变址寄存器deccnt;个数减1bgtloop;测试n个数据是否传送完成halt;停机num:n;需要传送的数据个数 cnt:0;剩余数据的个数主要优缺点比较:采用变址寻址方式编写的程序简单、易读。对于程序员,两种寻址方式的主要差别是:间址寻址方式:间接地址在主存储器中,没有偏移量变址寻址方式:基地址在变址寄存器中,有偏移量实现的难易程度:间址寻址方式容易指令的执行速度:间址寻址方式慢对数组运算的支持:变址寻址方式比较好自动变址:在访问间接地址过程中,地址自动增减变址与间址混合时,两种方式:前变址

16、寻址方式:EA(X)A)后变址寻址方式:EA(X)(A)3、寄存器寻址主要优点:指令字长短、指令执行速度快、支持向量和矩阵运算主要缺点:不利于优化编译、现场切换困难、硬件复杂4、堆栈寻址方式主要优点:支持高级语言,有利与编译程序;节省存储空间支持程序的嵌套和递归调用,支持中断处理主要缺点:运算速度比较低,栈顶部分设计成一个高速的寄存器堆2.2.3 定位方式程序的主存物理地址在什么时间确定?采用什么方式来实现?程序需要定位的主要原因:程序的独立性;程序的模块化设计;数据结构在程序运行过程中,其大小往往是变化的;有些程序本身很大,大于分配给它的主存物理空间直接定位方式:在程序装入主存储器之前,程序中的指令和数据的主存物理就已经确定了的称为直接定位方式。静态定位:在程序装入主存储器的过程中随即进行地址变换,确定指令和数据的主存物理地址的称为静态定位方式。动态定位:在程序执行过程中,当访问到相应的指令或数据时才进行地址变换,确定指令和数据的主存物理地址的称为动态定位 方式。计算机系统结构(第7讲)第二章指令系统2.1 数据表示2.2 寻址技术2.3 指令格式的优化设计2.4 指令系统的功能设计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号