收藏 分销(赏)

计算机系统结构 第2章.ppt

上传人:pc****0 文档编号:13181991 上传时间:2026-01-31 格式:PPT 页数:40 大小:254.50KB 下载积分:10 金币
下载 相关 举报
计算机系统结构 第2章.ppt_第1页
第1页 / 共40页
计算机系统结构 第2章.ppt_第2页
第2页 / 共40页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,属性,P4-5,计算机系统结构的属性应包括:,1.,硬件能直接处理的数据类型,格式等,2.,最小寻址单位,寻址类型,地址计算等,3.,通用,/,专用寄存器的设置,4.,指令系统,5.,内存组织,6.,中断系统,7.,机器级管态,/,用户态的定义和功能切换,8.,机器级,I,/,O,结构,9.,信息保护方式和保护机构,原理上,软件实现的功能完全可以用硬件或固件完成,硬件实现的功能也可以由软件的模拟来完成,只是其性能、价格实现的难易程度有所不同。,软件和硬件在逻辑上是等效的。,具有相同功能的计算机系统,其软、硬件功能分配比例可以在很宽的范围内变化。,第二章,数据表示与指令系统,(,P36,),2.1,浮点数表示和,IEEE 754,标准,2.2,高级数据表示,自定义数据,/,向量数据,/,堆栈数据,2.3,寻址方式与指令格式的优化设计,寻址方式,/,程序定位技术,/,指令格式优化设计,2.4,指令系统设计的两种风格,指令系统的功能,CISC,/,RISC,两种指令系统风格和它们的比较,第二章,数据表示与指令系统,(,P36,),本章的主要内容:,表示型与结构型数据,;,IEEE,标准浮点表示;,高级数据表示;指令系统设计的两种风格。,本章学习目的和要求:,掌握,IEEE,浮点表示;掌握描述型数据表示、,掌握,RISC,指令系统要点。,本章重点:,IEEE-754,浮点数标准,;,RISC,指令系统。,本章难点:,以,2,n,为底的浮点数尾数的理解。,数据漫谈,我们谈谈数据,(,Data,),和数据分类,数据,(,Data,),:没有发明电子计算机之前,Data,原意是,材料,。通常指那些,被证实可以使用的非实物材料,如数字,信息和消息,写文章的素材,打官司的理由,或者别的什么,乃至人们的思想,等,等一切“,待处理的对象,”,都可称“,Data,”,范围非常非常广。,今天在计算机行业,我们把,一切可以由计算机处理的数字,符号和其它信息,,统称,Data,。,.,本课仅讲解,:,用户自定义的,Data,系统,Data,指令。,2.1,浮点数表示,和,IEEE754,标准,(,P36,),2.1,.1,类型表示结构,2.1.1,数据类型,数据表示,数据结构及其关系,计算机的数据来源有三:,一,由用户在程序中定义,是要处理的数据。,二,由系统在程序运行过程蕴含生成,是系统固有的。,三,是指令即控制序列。,.,数据类型,:,指一组值的集合以及作用于这个集合上的操作集。,从系统结构角度看,数据类型可分为,基本数据类型,、,结构型数据类型,、,访问指针数据类型、抽象数据类型等。,表示型数据,和结构型数据,(,P36,),表示型、结构型,.,表示型数据,:硬件能直接识别和引用的、由运算指,令和运算部件实现运算的数据。如定点数,浮点数,,布尔数和二进串,,表示型数据,是,自然,数据形式。,.,结构型数据,:将表示型数据按一定的逻辑组织起来,就成为结构型数据。它们面向应用和软件。如,:,串,栈,队列,向量,树,图等等。,结构型数据,是,人为的,2.1.1,数据表示,(续,P37,),2.1.1,数据表示,结构型数据,由数据结构学科通过高级语言详细描,描述。硬件不“懂”,数据结构,要通过一定的,算法,变成,为,表示型数据,硬件才可以处理。,例如数据结构中的“,树,”,硬件不懂什么是“,根,”,什么是“,叶,”,它只认,0,和,1,。结构型数据,“,树,”需要,人确定:如何在计算机系统将其转变为,0,和,1,组成,的表示型数据计算机才可处理。,2.1.1,数据表示,(续,P37,),2.1.1,数据表示,结构型数据,通过一定的算法变成,表示型数据,才能在系统中处理。,结构型数据,和,表示型数据,的,差距是高级语言语义和机器语言语义的差距,数,据结构学科的研究,填补了差距的算法和映像。,例如“数组”通过变址寻址变为线性的一维数据,,硬件可以直接识别而处理之,再如用软件还是用硬件实现,BCD,运算,在系统,设计时就必须确定。,2.1.1,续,(R/H),数据表示是自然的,硬件可以识别,数据结构,是人为的,要通过软件才可识别。,系统结构设计者在设计系统时,要确定哪些数据,类型用,数据表示,实现?哪些数据类型用,数据结构,构,实现?亦即确定,硬件,和,软件,的选用问题。,例如实现,BCD,运算,是选用软件模块还是选用,硬件模块呢?在系统设计时就必须考虑好,。,两,型数据决定硬件和软件的划界,2.1.1,(,P37-,),2.1.1,续,(,向量,),举例:分别用软件和硬件实现向量运算的问题:,设向量操作,A,=,A,+,B,,若,A,B,都是,200,阶的方阵。,在没有硬件支持向量数据表示的计算机,需要用,6,条,指令软件实现。其中,4,条要循环,4,万次,!,在有向量表示的计算机上只一条“,向量加,”就够了,访内就减少,16,万次,!,大大加快了程序的运行。可见,对有大量向量运算的场合,选用向量处理机合算。,硬件 软件,数据表示 数据结构,表示型数据 结构型数据,机器语言语义 高级语言语义,2.1.2,浮点数据表示,按小数点的位置是否固定,机器数分定点数和浮点数。,.,定点整数:约定最高位为符号位,小数点固定在,数的最低位右边。如:,+,1011011,.,.,定点纯小数:约定最高位为符号位,小数点固定在,符号位之后。如:,+,.,1011011,注:,*,只有整数和纯小数可用定点表示,以补码为例,,如,-,0011011,定点补码为,11100101,-,0.0011011,定点补码为,1.1100101,*,但是,无论什么数都可以用浮点表示,.,浮点数,一般的典型格式如图所示:,数符,阶符,E,(阶码),M,(尾数的有效数字),一般浮点表示,小数点,S,S,E,E,1,E,n,M,1,M,2,M,m,N,(,-,1,),S,2,E,0.M,.,理论上,浮点数,从格式换算为真值:,.,浮点数定义为小数点位置可按需浮动的数。,.,浮点数可表示整数,纯小数,既有整数又有小数的数。,数符,阶符,E,(,原码表阶码,),M,(,原码表,尾数的有效数,),一般浮点表示,小数点,1,0,0,0,1,0,0,1,0,0,1,1,0,0,0,0,浮点数是,小数点位置可按需浮动的数,它的二进制一般格式是,N,(-,1,),S,2,E,0,.,M,(这里用原码表示),式中,N,:,数的值,;,S,:,符号位,;,E,:,阶码,;,M,:,尾数有效数字,例:,将十进制数,(-,9.5,),表示为,16,位的浮点字,。,解:,(-,9.5,),(-,1001.1,B,),,,按格式书写:,(-,1001.1,B,),(-,1,),1,2,+,4,0.,10011,IEEE754,标准格式和一般格式有些差别,。在,本标准:,约定阶码,E,实际阶码值,127,所以本标准中,E,无,负数,这个,阶码是一种移码,表示,。,约定,M,小数点前面隐含一个,“,1,”,,,这意味着格式化,的尾数值是,1.,M,,表数精度比一般格式高。,采取某些措施表示几个特别的数字,(P46,表,2.4,),。,IEEE 754,规格化的单精度,浮点数真值按下计算:,式中,尾数的真值,=,1.M,,阶的真值,=,E,-,127,符号,S=0,或,1,IEEE,N,(,1,),S,2,E,127,1.M,2.1.3,IEEE,754,标准浮点数格式表示,2.1.3 IEEE,,,P45,(a),单精度格式字长,32,位,其真值,N,求得方法如下:,1,S,E,M,23,位,8,位,N,(,1,),S,2,E,127,1.M,(b),双精度格式字长,64,位,其真值,N,求得方法如下:,N,(,1,),S,2,E,1023,1.M,S,M,E,1,52,位,11,位,IEEE,标准,按,IEEE,标准常用的三种浮点数的格式为:,数符 阶码 尾数 总位数,短 实 数,1 8 23 32,长 实 数,1 11 52 64,临时实数,1 15 64 80,以下各片供复习时参考:,符号位,(Sign),表示整个浮点数的符号。,有符号原码定点整数的表示范围为:,-,(,2,n,-1,),(,2,n,-1,),n,为尾数位数,有符号补码定点整数的表示范围为:,-2,n,(,2,n,-1,),n,为尾数位数,如,8,位定点数原码表示范围为,-127 127,补码表示范围为,-128 127,复习参考,为解决浮点运算,把各个浮点数阶码化为同阶,,叫作,浮点的的对阶,。,设浮点数,1,:,F1=M12,n1,浮点数,2,:,F2=M22,n2,若,n1,n2,,,为保证,F1,的值不变,将,n1,减小,,M1,增大,(,小数点右移,),直到,n1=n2,或,n2,增大,,M2,减小,(,小数点左移,),直到,n1=n2,例:,F1=1.10112,5,F2=1.11012,3,可,化,F1=110.112,3,就可与,F2,作加减运算,或,化,F2=0.0111012,5,就可与,F1,作加减运算,续上,浮点数的规格化,规定,:,浮点数,F=M12,n,在保证,F,的值不变的前提下,同时变换,n,和,M1,的值,,,使得该浮点数,真值,的尾数小,数点后面第一位为“,1,”,成为,0.1,2,n,的形式,例如:,0.0100111,2,6,变换为,0.1001110,2,5,(,注,:,请同学们考虑,如若尾数用补码表示,那,末小数点后第一位应是,?,请举例,),续上,0,0,0,1,1,1,1,0,1,1,0,1,1,0,1,0,0,0,0,1,1,0,1,0,1,1,0,1,1,0,1,0,规格化得:,F1=0.1 0 1 1 0 1 1 0 1 0 2,10,:,又如,F2=,0.0 0 1 0 0 1 0 1 1 1 2,9,1,1,0,1,1,1,1,0,1,1,0,1,0,0,1,1,规格化,得,F2=,0.1 0 0 1 0 1 1 1 0 0 2,11,1,1,0,1,0,1,1,1,0,1,0,0,1,0,0,0,数,F1=0.0 1 0 1 1 0 1 1 0 1 2,9,续上,4,)移码:,移码符号位与补码反,其余数位与补码同。,一个数的移码这样求得:,将该数的补码,符号位取反,即得。,如:,+,1101,的补码是,0,1101,,,则其移码为,1,1101,。,1101,的补码是,1,0011,,,则其移码为,0,0011,。,移码,P48,,表,2.4,IEEE 754,单精度浮点数作出一些规定,让规定字长范围内尽可能多地表示浮点数,表示,0,S=,0,or,1,E,0,M,0,N,0,表示,S=,0,or,1,E,255,M,0,N,表,NaN,S=,0,or,1,E,255,M,0,N,NaN,表非规格化数,S=,0,or,1,E,0,M,0,N,(,1),S,2,E,126,0.M,表示真浮点数,S=,0,or,1,0,E,254,M,0,N,(,1),S,2,E,127,1.M,例题,P49,例,1,将十进数,(,1.5,),以,IEEE 754,单精度浮点表示,解:浮点表示可将二进制的,S,E,M,依次,拼接而得,N,(,1),1,2,0,1.1,得,S=,1,E,127,M,100000,(,22,个,0,),1.5,表示为,IEEE 754,单精度浮点数是:,1,01111111,10000000000000000000000,例,2,已知单精度浮点数,求其十进制表示。浮点数为:,1,10000001,01000000000000000000000,解:,S=,1,E,129,M,0.25,代入公式,N,(,1),S,2,E,127,1.M,得,N,5,2.2,高级数据表示,2.2,高级数据表示,(,P47,),.,数据表示分两大类:,1),基本数据表示,:从数学概念引申而来,如定点数,据表示,浮点数据表示,逻辑数据表示,二进制,数据表示,十进制数据表示,等等。,3,2),高级数据表示:,由基本数据表示经构造而成,目,的在于使机器对数据结构提供支持,以缩小计算,机高级语言和机机器语言间的语义差距。,.,我们介绍高级数据表示的:,自定义数据表示,向量数据表示,堆栈数据表示,.,2.1.1,自定义表示,2.2.1,自定义数据表示,.,为克服语义差距,减少编译工作量,引入“自定义,数据类型”,试图把不同类型的同种运算指令统一。,.,这里介绍两种自定义的数据表示:,1),对于一般数据,在数据前面增加一个标志,(,Tag),就构成“带标志符的数据表示”,2),对于性质相同的数据块,用一个字作为描述符,,构成“数据块的描述符表示法”,或,Descriptor,就构成自定义数据表示,。,称为通用化指令,(,涵盖所有数据类型,).,a,),带标志符的数据表示,数据前面有“标志符”,(,Tag,),的数据,a,带,tag,的表示,Tag,Data,.,不同用途数据的区别含于,Tag,中,Tag,指明数据的,功能。对数值数据,Tag,指明数值的类型和其他细,节。对指令而言,指令种类是大大的减少了。,.,带,Tag,的数据由,系统软件,和,高级语言的编译器建,立,对程序员和用户是透明的。,.,不论数值数据,指针,指令,控制字,格式统一为:,b,),带标志符,(tag),的数据格式:,b,带,tag,的格式,FC,D A T A,Trap,Type,P,操作数,指 令,地 址,控制字,R,/,RW,捕捉方式,只读或读写,16,种数据类型,奇偶校验,图,2.5,R-2,计算机,Tag,功能说明,十进制数,定点数,浮点数,字符串,例如,二进制数,2,2,1,4,1,标志符,数据,带,tag,优与疑,.c,),带标志的数据表示有以下优点,:,(,P51,),1,),数据类型一致了,便于一致性检验。,2,),大大简化了指令,3,),简化系统程序和编译程序的设计,4,),方便调试和开发,5,),支持,DBS,实现“,与数据类型无关,”的需求,.d,),带标志的数据表示有以下质疑讨论,:,1,),存储空间节约了吗,?,2,),指令执行速度提高了吗,?,3,),硬件设计的复杂程度如何,?,2,),描述符,表示法,2.,Descriptors,在结构型数据,一个数据块,有成百上千个数据,如果每,个数据都用,Tag,说明,就太,繁琐、太浪费了。于是人们,把,Tag,单独作一个字,称为,描述符,Descriptor,,,描述符,放在数据块的最前面。,描述符,数 据,数 据,数 据,主 存,被描述的数据块,2,),Burroughs,公司率先使用描述符,格式如下,2.,Descriptors,图,2.8,B-6700,数据描述符表示法(,P50,),101,数据块起址,数据块长度,标志位,000,010,数 值 数 据,数据块中的描述符,数据块中的一个数值数据,8,位,20,位,20,位,3,位,48,位,3,位,图,2.9 P51,操作码,图,2.9,通过描述符,的,取指操作,Y,X,101,101,101,000,B,000,000,A,101,101,地址形,成逻辑,数据块,数据块,000,图,2.,10,图,2.10,用描述符描述,二维数组,000,a,21,101,S1,2,101,S2,2,101,S3,2,101,S3,3,000,a,22,000,a,31,000,a,32,000,a,11,000,a,12,3,2,二维数,A,祖,三元素向量,2.2.2,向量数据表示,P52,2.2.2,向量,要计算向量,C,i,A,i,+B,i,8,在标量机通常用高级语言,如:,for,(,i,=4;,i,=11,;,i,+,),C,(,i,),=A,(,i,),+B,(,i,8,),在编译后借助变址操作实现,各条指令顺序,执行。为了实现,for,的全部功能,可设置如下,“向量加”,指令,向量指令,P53,C,(,4,:,11,),A,(,4,:,11,),+B,(-4:3),2.2.2,向量,区段寄,存器,X,放,A,的,位移量,区段寄,存器,Y,放,B,的,位移量,A,向量,的基址,及长度,B,向量,的基址,及长度,区段寄,存器,Z,放,C,的,位移量,C,向量,的基址,及长度,向量加,A,Y,B,Z,C,操作码,向量起始地址,s=,基址,b+,位移量,d,,,向量的有效长度,e=,向量长度,位移量,d,向量,Ci=Ai+Bi,A,11,A,10,A,9,A,8,A,7,A,6,A,5,A,4,A,3,A,2,A,1,A,0,C,11,C,10,C,9,C,8,C,7,C,6,C,5,C,4,C,3,C,2,C,1,C,0,B,3,B,2,B,1,B,0,B,-1,B,-2,B,-3,B,-4,基址,A,始址,A,基址,B,b,基址,C,位移量,A,d,=4,有效长度,A,e,=11,-,4,向量长度,A,v,源向量,A,源向量,B,结果向量,C,始址,B,始址,C,向量起始地址,s=,基址,b+,位移量,d,,,向量的有效长度,e=,向量长度位移量,d,C(4:11),A(4:11)+B(-4:3),2.2.3,堆栈数据表示,P54,2.2.3,堆栈(,1,),.,堆栈,(,Stack,),从硬件角度看是一种存储结构。,.,从软件角度看,堆栈是一种后进先出的表,如同,弹夹。堆栈只有一个数据出入的端口。,.,堆栈数据操作的特点是指令只需指出是什么操作,无需指出操作数地址。,.,存储器堆栈在主存,栈底固定栈顶浮动,堆栈指,针指向栈顶,数据存取在栈顶单元进行,速度慢。,.,寄存器堆栈没有堆栈指针,栈顶固定,栈底浮动,数据存取在栈顶单元进行,速度快。,2.2.3,堆栈数据表示,2.2.3,堆栈(,2,),.,堆栈型数据表示对复杂的算术表达式的求解比较,方便;将算术表达式转换为逆波兰式表示法,在,堆栈上进行运算,可以缩短计算程序。,.,堆栈型数据表示支持子程序调用、中断、嵌套和,递归,广泛高级语言编译及程序调用技术。,.,现代计算机一般都设计有堆栈数据表示。,.,具有堆栈型数据表示,且以面向堆栈寻址方式为,主的计算机称,“堆栈型计算机”,。,3.11,作业:,P87 2.2,P88 2.7,(,1,)、(,2,),2.8,(,3,)、(,4,),2.10,、,2.11,
展开阅读全文

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


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服