计算机体系结构chapter2-2_第1页
计算机体系结构chapter2-2_第2页
计算机体系结构chapter2-2_第3页
计算机体系结构chapter2-2_第4页
计算机体系结构chapter2-2_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

§2寻址方式

寻址方式:是指令按什么方式寻找(访问)到所需的操作数或信息的。寻找操作数及其地址的技术称为寻址技术编址方式寻址方式分析

逻辑地址与主存物理地址定位方式1编址方式对各种存储设备进行编码的方法。主要内容:编址单位、零地址空间个数、并行存储器的编址、输入输出设备的编址编址单位常用的编址单位:字编址、字节编址、位编址、块编址等编址单位与访问字长一般:字节编址,字访问部分机器位编址,字访问辅助存储器块编址,位访问2编址方式字节编址字访问的优点有利于符号处理字节编址字访问的问题:地址信息浪费对于32位机器,浪费2位地址(最低2位地址)对于64位机器,浪费3位地址存储器空间浪费读写逻辑复杂大端(BigEndin)与小端(LittleEndian)问题34存储器空间浪费5读写逻辑复杂,增加1个align操作6大端(BigEndin)与小端(LittleEndian)问题7CPUEndiannessLittle-endianx86(Intel,AMD,…)DECAlphaBig-endianSUNSPARCRS/6000UNIXMotorolam68000Big-endian/little-endianHP-PANTlittle-endianMIPSNTlittle-endianPowerPCNTlittle-endianHP-PAUNIXbig-endianMIPSUNIXbig-endianPowerPCnon-NTbig-endian8EndiannessalsoapplicabletosomefilesAdobePhotoshop--BigEndianBMP(WindowsandOS/2Bitmaps)--LittleEndianDXF(AutoCad)–VariableGIF--LittleEndianIMG(GEMRaster)--BigEndianJPEG--BigEndianFLI(AutodeskAnimator)--LittleEndianMacPaint--BigEndianPCX(PCPaintbrush)--LittleEndianPostScript--NotApplicable(text!)QTM(QuicktimeMovies)--LittleEndian(onMacs)MicrosoftRIFF(.WAV&.AVI)–BothMicrosoftRTF(RichTextFormat)--LittleEndianSGI(SiliconGraphics)--BigEndianSunRaster--BigEndianTGA(Targa)--LittleEndianTIFF--Both,EndianidentifierencodedintofileWPG(WordPerfectGraphicsMetafile)--BigEndian(onPCs)XWD(XWindowDump)--Both,Endianidentifierencodedintofile9零地址空间个数三个零地址空间:通用寄存器、主存储器、输入输出设备独立编址两个零地址空间:主存储器与输入输出设备统一编址一个零地址空间:最低端是通用寄存器,最高端是输入输出设备,中间为主存储器隐含编址方式:堆栈、Cache等并行存储器的编址技术高位交叉编址:主要用来扩大存储器容量。低位交叉编址:主要是提高存储器速度。10输入输出设备的编址一台设备一个地址:通过指令来区分地址,地址内部区分地址。一台设备两个地址:数据寄存器、状态或控制寄存器。多个编址寄存器共用同一个地址的方法:依靠地址内部来区分,适用于被编址的寄存器的长度比较短“下跟法”隐含编址方式,必须按顺序读写寄存器。一台设备多个地址:增加编程的困难11寻址方式分析面向主存:主要访问内存,少量访问寄存器面向通用寄存器:多数在寄存器,少量在内存面向堆栈:主要在堆栈,可减轻编译负担12寻址方式的种类寄存器寻址ADDR4,R3R4<-R4+R3立即寻址ADDR4,#3R4<-R4+3直接寻址ADDR1,(2000)R1<-R1+M[2000]间接寻址ADDR4,(R1)R4<-R4+M[R1]相对寻址ADDR4,100(R1)R4<-R4+M[100+R1]13寻址方式的种类(续)变址寻址ADDR3,(R1+R2)R3<-R3+M[R1+R2]寄存器间接寻址ADDR1,@(R3)R1<-R1+M[M[R3]]自增自减寻址ADDR1,(R2)+R1<-R1+M[R2]R2<-R2+d比例寻址ADDR1,100(R2)[R3]R1<-R1+M[100+R2+R3*d]14寄存器寻址主要优点:指令字长短,指令执行速度快,支持向量和矩阵等运算主要缺点:不利于优化编译,现场切换困难,硬件复杂15堆栈寻址方式主要优点:支持高级语言,有利与编译程序,节省存储空间,支持程序的嵌套和递归调用,支持中断处理主要缺点:运算速度比较低,栈顶部分设计成一个高速的寄存器堆16间接寻址方式与变址寻址方式的比较目的相同:都是为了解决操作数地址的修改原则上,一种处理机中只需设置间址寻址方式与变址寻址方式中的任何一种即可,有些处理机两种寻址方式都设置如何选取间址寻址方式与变址寻址方式?例:一个由N个元素组成的数组,已经存放在起始地址为AS的主存连续单元中,现要把它搬到起始地址为AD的主存连续单元中。不必考虑可能出现的存储单元重叠问题。为了编程简单,采用一般的两地址指令编写程序。17用间接寻址方式编写程序START:MOVEASR,ASI;保存源起始地址MOVEADR,ADI;保存目标起始地址MOVENUM,CNT;保存数据的个数LOOP:MOVE@ASI,@ADI;传送一个数据INCASI;源数组的地址增量INCADI;目标数组地址增量DECCNT;个数减1BGTLOOP;测试数据传送完?HALT;停机ASR:AS;源数组的起始地址ADR:AD;目标数组的起始地址NUM:N;需要传送的数据个数ASI:0;当前正在传送的源;数组地址ADI:0;当前正在传送的目标;数组地址CNT:0;剩余数据的个数18用变址寻址方式编写程序START:MOVEAS,X;取源数组起始地址MOVENUM,CNT;保存数据个数LOOP:MOVE(X),AD-AS(X);传送一个数据INCX;增量变址寄存器DECCNT;个数减1BGTLOOP;测试数据传送完成HALT;停机NUM:N;传送的数据个数CNT:0;剩余数据的个数19主要优缺点比较采用变址寻址方式编写的程序简单、易读。对于程序员,两种寻址方式的主要差别是:间址寻址:间接地址在主存中,没有偏移量变址寻址:基地址在变址寄存器中,有偏移量实现的难易程度:间址寻址方式容易实现指令的执行速度:间址寻址方式慢对数组运算的支持:变址寻址方式比较好自动变址:在访问间接地址时,地址自动增减前变址与后变址:变址与间址混合时前变址寻址方式:EA=((X)+A)后变址寻址方式:EA=(X)+(A)20寻址方式在指令中的指明方式操作码占用位DJS200中:操作码中2位表示地址码设置寻址方式字段VAX-11的4位寻址灵活、操作码短,需专门的寻址方式位字段21使用概率分析法分析寻址方式例1:在VAX指令集机器上运行gcc、Spice和Tex基准程序,各种寻址方式的分布如下图:0%70%60%50%40%30%20%10%6%1%1%0%16%6%24%3%11%43%17%39%32%55%40%TexSpicegcc存储器间接寻址变址寻址寄存器间接寻址立即寻址偏移寻址22寻址方式参数大小选择

例2:在某R-R机器上运行SPECint92和SPECfp92进行测试,结果分布如下:0246810121416SPECint92SPECfp920%5%10%15%20%25%30%占偏移寻址方式百分比Log2(偏移量大小)

可见:偏移量字段为12-16位时,能表示75%-99%的访问频率,字段长应设置为12-16位。

结论:根据寻址方式的频率分布,确定满足大多数要求的寻址范围,与操作码长度组合决定寻址长度。23逻辑地址与主存物理地址

逻辑地址:程序员编写程序时使用的地址。物理地址:程序在主存中的实际地址。一般来讲,逻辑地址的空间大于物理地址的空间。如逻辑地址为32位,即232=4GB物理地址只有256MB映射实际上是压缩。24定位方式程序的主存物理地址在什么时间确定?采用什么方式来实现?程序需要定位的主要原因:程序的独立性程序的模块化设计数据结构在程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论