assembly - ARM,16个寄存器中哪个是CPSR?
问题描述
我现在有点困惑,下表显示了据我所知程序员可用的 ARM 寄存器:
| Register Name | Register Number | Usage |
| ---------------- | --------------- | -------------------- |
| r0 - r10 | 0 - 10 | General Purpose |
| r11 or fp | 11 | Frame Pointer |
| r12 or ip | 12 | Intraprocess scratch |
| r13 or sp | 13 | Stack Pointer |
| r14 or lr | 14 | Link Register |
| r15 or pc | 15 | Program Counter |
TST
但也有例如由指令处理的 CPSR 。所以我的问题是,16 个寄存器中的哪一个是 CPSR?
解决方案
他们都没有。这不是所有机器寄存器的完整列表,只有通用寄存器( r0-r14
) 和程序计数器。机器还有很多非通用的寄存器,CPSR就是其中之一。事实上,在我的 armv8 架构参考手册副本中,CPSR 被明确称为“专用”寄存器。
推荐阅读
- java - 在 Spring MVC 中将多个相同的对象发送到 Controller
- matplotlib - 如何在matplotlib中绘制子图水平和垂直对齐?
- assembly - GCD 8086 程序
- c# - HttpClient Post请求未在C#中发送post参数
- python - 加快图像上的平方样本求和
- arrays - Excel VBA Slicer - 根据是否找到值进行调整的数组
- sql-server - 删除 nvarchar SQL 中逗号后的最后一个值
- python - python中如何使用TypeVar进行多个通用协议的输入和输出?
- vb.net - 可以从 CrystalReport 读取数据吗?
- azure - 在 CI 管道中运行时赛普拉斯测试花费的时间太长