chap2-计算机指令集结构.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
指令实例 指令名称 含 义 LW R1, 30 (R2) 载入整型字 Regs[R1] ←32 Mem[30+Regs[R2]] LW R1, 1000 (R0) 载入整型字 Regs[R1] ←32 Mem[1000+0] LB R1, 40 (R3) 载入字节 Regs[R1] ←32 (Mem[40+Regs[R3]]0)24 ## Mem[40+Regs[R3]] LBU R1, 40 (R3) 载入无符号字节 Regs[R1] ←32 024 ## Mem[40+Regs[R3]] LH R1, 40 (R3) 载入整型半字 Regs[R1] ←32 (Mem[40+Regs[R3]]0)16 ## Mem[40+Regs[R3]] ## Mem[41+Regs[R3]] LF F0, 50 (R3) 载入单精度浮点 Regs[F0] ←32 Mem[50+Regs[R3]] LD F0, 50 (R2) 载入双精度浮点 Regs[F0] ## Regs[F1] ←64 Mem[50+Regs[R2]] SW 500 (R4), R3 储存整型字 Mem[500+Regs[R4]] ←32 Regs[R3] SF 40 (R3), F0 储存单精度浮点 Mem[40+Regs[R3]] ←32 Regs[F0] SD 40 (R3), F0 储存双精度浮点 Mem[40+Regs[R3]] ←32 Regs[F0] Mem[44+Regs[R3]] ←32 Regs[F1] SH 502 (R2), R31 储存整型半字 Mem[502+Regs[R2]] ←16 Regs[R31]16..31 SB 41 (R3), R2 储存整型字节 Mem[41+Regs[R3]] ←8 Regs[R2]24..31 DLX中Load和Store指令实例 (2) ALU操作 简单的算术和逻辑运算 寄存器比较指令(?,?,?,?,?,?) 指令实例 指令名称 含 义 Add R1, R2, R3 加 Regs[R1] ← Regs[R2] + Regs[R3] ADDI R1, R2, #3 和立即值相加 Regs[R1] ← Regs[R2] + 3 LHI R1, #42 载入高位立即值 Regs[R1] ← 42 ## 016 SLLI R1, R2, #5 逻辑左移的 立即值形式 Regs[R1] ← Regs[R2] 5 SLT R1, R2, R3 设置小于 if (Regs[R2] Regs[R3]) Regs[R1] ← 1 else Regs[R1] ← 0 ALU指令实例 2.6 DLX指令集结构 (3) 分支和跳转操作 ◆ 根据描述目标地址的方法和是否链接可以将 跳转操作指令分为四种类型。 其中: 两种类型的跳转指令用带符号位的26位 偏移量加上程序计数器的值来确定跳转 的目标地址; 另外两种类型的跳转指令则指定一个寄 存器,由寄存器中的内容决定跳转的目 标地址。 2.6 DLX指令集结构 ◆ 跳转有两种类型 简单跳转 跳转并链接(用于过程调用) 返回一个地址,也即将下一条顺序指令 地址(返回地址)保存在寄存器R31中。 ◆ 所有分支指令均是条件分支指令。 分支目标地址由一个带符号的26位偏移量加 上程序计数器的值来确定。 2.6 DLX指令集结构 指令实例 指令名称 含 义 J name 跳转 PC ← name; ((PC+4)-225) ≤ name ≤((PC+4)+225) JAL name 跳转并链接 Regs[R31] ← PC+4; PC ← name; ((PC+4)-225) ≤ name ≤((PC+4)+225) JALR R2 寄存器型 跳转并链接 Regs[R31] ← PC+4; PC ← Regs[R2]; JR R3 寄存器型跳转 PC ← Regs[R3]; BEQZ R4 ,name “等于0”分支 if (Regs[R4]==0) PC ← name; ((PC+4)-215) ≤ name ≤((PC+4)+215) BNEZ R4 , name “不等于0”分支 if (Regs[R4]!=0) PC ← name; ((PC+4)

文档评论(0)

精品报告 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档