社区
嵌入开发(WinCE)
帖子详情
关于MIPS跳转指令的疑问
sinat_26832761
2015-03-24 01:20:11
学了MIPS的J-Type之后产生了一个疑问,J指令格式要求在32位中前6位声明指令类型,后26位表示要跳转到的指令的绝对地址,这个时候默认跳转到的指令和跳转发生的指令的前六位是一样的,那么如果现在的指令是OxFFFFFF3,那么下一个指令发出后即使只跳转了一位,那么现在的地址加上Ox00000004之后也会发生进位,而这时候的跳转并没有超过256M,那么这样的情况应该怎么解决呢?
...全文
311
2
打赏
收藏
关于MIPS跳转指令的疑问
学了MIPS的J-Type之后产生了一个疑问,J指令格式要求在32位中前6位声明指令类型,后26位表示要跳转到的指令的绝对地址,这个时候默认跳转到的指令和跳转发生的指令的前六位是一样的,那么如果现在的指令是OxFFFFFF3,那么下一个指令发出后即使只跳转了一位,那么现在的地址加上Ox00000004之后也会发生进位,而这时候的跳转并没有超过256M,那么这样的情况应该怎么解决呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mangoalx
2015-03-24
打赏
举报
回复
个人意见,没研究过 总地址不溢出就行。26位地址溢出没关系。因为这26位只是指令内的位数限制,不是运算或寻址的限制,所以计算跳转地址时会正确进位,没有问题
通过简单例子,学习
MIPS
指令
集(一)
MIPS
指令
集是计算机应用中最简单的
指令
集,弄懂
MIPS
指令
集,可以帮助我们更好的理解计算机的运行原理。 本文大量参考《计算机组成与设计 硬件/软件接口》这本书(提取码为:os0a),如果你看完觉得不过瘾,可以下载...
MIPS
学习(2) -- 延迟槽的学习
分支延迟 与 加载延迟----------... 而一般是否
跳转
以及
跳转
的目标地址的获取都是在ALU阶段开始在决定了(流水级引用五级流水), 而在这时刚好来得及获取目标地址是下下条
指令
,而不是下一条
指令
。 为了利用这一点,M
MIPS
分支延迟与加载延迟
分支延迟 与 加载延迟-----------... 而一般是否
跳转
以及
跳转
的目标地址的获取都是在ALU阶段开始在决定了(流水级引用五级流水), 而在这时刚好来得及获取目标地址是下下条
指令
,而不是下一条
指令
。 为了利用这一点,
【计算机硬件系统设计(华科)——单周期
MIPS
CPU(Logisim 实现)】
下一层为无条件
跳转
指令
选择,当执行JAL(函数调用
指令
)或J(无条件
跳转
指令
)选择由26位立即数运算得到的地址;第三层选择为JR
指令
(
跳转
到寄存器记录地址,一般用于在JAL调用退出时使用),一般选择$31号寄存器...
关于非本地
跳转
csapp p_795 如下所述的问题经过讨论并未被解决…… 以下示例中未以ARM为例...关于非本地
跳转
存在的
疑问
(以setjmp、longjmp为例)函数调用之间需遵循ABI规范 有些寄存器是由caller保存(以备被callee使用而修改...
嵌入开发(WinCE)
19,502
社区成员
41,568
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章