Not*_*hat
6
RES0在"ARMv8体系结构参考手册"中有正确定义(另请参见标准ARM术语表),但总的来说,它表示具有未知值的保留字段,软件必须在初始化时写入全0,然后保留(通过读取 - 修改 -在寄存器上写操作).值得注意的是,软件不应该依赖于随后读回0的字段.
正如您现在可能想象的那样,RES1与1而不是0完全相同(即初始化所有位设置).
这本质上是一种向前兼容性承诺,如果该字段的任何部分被重新用于表示架构的未来版本中的某些内容,则当前保留值将是保持当前行为的"安全"设置.有时,它还用于保留已删除过时功能的向后兼容性(例如,大多数保留的SCTLR位).