- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机体系结
中国科学技术大学 计算机体系结构 周学海 xhzhou@ustc.edu.cn 0551-3492271 中国科学技术大学计算机系 Review Amdahl’s 定律: CPI Law: 执行时间是计算机系统度量的最实际,最可靠的方式 第2章 指令集结构设计 2.1 指令集结构分类2.2 寻址方式2.3 操作数的类型、表示和大小2.4 指令集功能设计2.5 指令格式 2.6 编译技术与计算机体系结构2.7 DLX指令集结构 指令集设计 指令集结构: 我们必须说明哪些东西? 指令格式或编码方式。即如何编码? 操作数和操作结果的存放位置 存放位置? 多少个显式操作数? 存储器操作数如何定位? 哪些操作数可以或不可以放到存储器中? 数据类型和大小 寻址方式 支持哪些操作 下一条指令地址 jumps, conditions, branches fetch-decode-execute is implicit! 有关ISA的7个方面 Class of ISA Memory addressing Addressing modes Types and sizes of operands Operations Control flow instructions Encoding an ISA 2.1 ISA 的基本分类 ISA 的基本分类 累加器型(Accumulator) (1 register): 1 address add A acc ? acc + mem[A] 1+x address addx A acc ? acc + mem[A + x] 堆栈型(Stack): 0 address add tos ? tos + next 通用寄存器型(General Purpose Register): Register-memory 2 address add A B EA[A] ? EA[A] + EA[B] 3 address add A B C EA[A] ? EA[B] + EA[C] Load/Store: 3 address add Ra Rb Rc Ra ? Rb + Rc load Ra Rb Ra ? mem[Rb] store Ra Rb mem[Rb] ? Ra 存储器-存储器型 (目前已经没有) 比较指令条数 通用寄存器型占主导地位 1980以后至今几乎所有的机器都用通用寄存器结构 原因 寄存器比存储器快 对编译器而言寄存器更容易使用 (A*B)-(B*C)-(A*D) 寄存器可以存放变量 代码紧凑 通用寄存器的分类 分类原则: ALU指令到底是两地址指令还是三地址指令 ALU指令中有多少个操作数可以用存储器寻址,即有多少个存储器操作数 常见的通用寄存器型指令集结构的优缺点 2.2 寻址技术 如何解释存储器地址?如何说明寻址方式? 1980年以来几乎所有机器的存储器都是按字节编址的 ISA设计要关注两个问题: 8bits-字节, 16bits-半字,32bits -字, 64bits -双字 如何读32位字,两种方案 每次一个字节,四次完成 每次一个字,一次完成 问题: (1)如何将字节地址映射到字地址 (尾端问题) (2)一个字是否可以存放在任何字节边界上 (对齐问题) 即尾端(Endian)和对齐问题 尾端问题 little endian, big endian, 在一个字内部的字节顺序问题,如地址xxx00指定了一个字(int), 存储器中从xxx00处连续存放ffff0000, 则有两种方式: Little endian 方式下xxx00位置是字的最低字节,整数值为0000ffff, Intel 80x86, DEC Vax, DEC Alpha (Windows NT) Big endian 方式下xxx00位置是字的最高字节,整数值为ffff0000, IBM 360/370, Motorola 68k, MIPS, Sparc, HP PA 对齐问题 对一个s字节的对象访问,地址为A,如果A mod s =0 那么它就是边界对齐的。 边界对齐的原因是存储器本身读写的要求,存储器本身读写通常就是边界对齐的,对于不是边界对齐的对象的访问可能要导致存储器的两次访问,然后再拼接出所需要的数。(或发生异常) 寻址方式 寻址方式:如何说明要访问的对象地址 有效地址:由寻址方式说明的某一存储单元的实际存储器地址。 有效地址 vs. 物理地址 寻址方式 各种寻址方式的使用情况? (忽略寄存器直接寻址) 偏移寻址 主要问题:偏移的范围(偏移量的
您可能关注的文档
最近下载
- 2025年广东省云浮市小升初数学模拟试卷.pdf VIP
- GB50003-2011:砌体结构设计规范.pdf VIP
- 6MW屋顶分布式光伏项目方案可研报告(EMC).docx
- NHA-509稳态工况法工控柜安装手册V1.1.doc VIP
- 办公设备采购(电脑、打印机等)投标方案.docx VIP
- 南华NHA509汽车排放气体测试仪操作规程24页.pdf VIP
- 苏教版二年级数学上册全单元测试题(可打印).docx VIP
- 可行性研究报告-财务分析表格-全部带公式-准完美版.xls VIP
- PLC控制的Z3050型摇臂钻床电气控制报告讲解.pdf VIP
- 公安局辅警招聘考试试题库《综合理论知识》(含政治理论、法律法规、公安工作基本知识).pdf VIP
文档评论(0)