首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RISC-V立即编码符号究竟是如何工作的?

RISC-V立即编码符号究竟是如何工作的?
EN

Stack Overflow用户
提问于 2021-05-02 16:48:26
回答 1查看 128关注 0票数 1

我以为我已经明白了这一点,但我想我把自己搞糊涂了。

我的印象是11:0是编码中立即位的顺序。例如,addi x1, x2, 12的立即数为000000001100;立即数从addi指令编码中的第20位开始。

我搞不懂这个逻辑如何适用于U型编码31:12中使用的相同符号。我知道U型立即数是20位,但我现在不确定如何解释这个符号。

EN

回答 1

Stack Overflow用户

发布于 2021-05-02 17:02:21

U型用于lui,其中立即数进入Rd的高20位,而低12位被清除。或者对于auipc,相同的解码;位[31:12]来自指令,低12位是隐式0。

因此,位数是解码后的值中的位置,而不仅仅是立即数本身。

图中的位置显示每个值位在机器编码中的位置; [hi:lo] 位范围数字显示此字段映射到哪个值位(完整的32位或64位整数)。

有关其余RISC-V即时组件的更多一般内容,请参阅ISA文档中的设计注释,在几个问答中引用和扩展:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67354485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档