cpu - 如何区分指令和数据?

标签 cpu arm cpu-architecture

在阅读 ARM 核心文档时,我有这个疑问。 CPU如何区分读取的数据和数据总线,是作为指令执行还是作为它可以操作的数据?

引用文档摘录——

"Data enters the processor core through the Data bus. The data may be an instruction to execute or a data item."



在此先感谢您对我的启发!
/多发性硬化症

最佳答案

简单的答案 - 它没有。机器代码指令只是二进制数,数据也是。更复杂的答案 - 您的处理器可能(也可能不)提供内存分段,这意味着尝试执行已指定为数据的内容会导致某种陷阱。这是“段错误”的含义之一 - 处理器试图执行未标记为可执行代码的内容。

关于cpu - 如何区分指令和数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2022489/

相关文章:

c++ - 如何为 Qt 应用程序重新校准触摸事件?

基于 Windows 8 ARM 的平板电脑上的 VB6

cpu-architecture - 如果长时间闲置,Cache是​​否会清空自身?

cpu-architecture - 在 MESI 缓存一致性协议(protocol)中,如果需要从内存中获取数据,缓存行的状态究竟何时发生变化?

database - NBody 模拟 - 适当的设计方法

optimization - 会无条件跳转刷新 x86_64 上的管道吗?

c# - x86 CPU 执行哪些类型的重新排序优化?

iphone - iPhone 的汇编 (.s) 代码中的条件编译 - 如何进行?

mips - 查找代码片段的偏移量

php - 高 CPU 消耗的 Mysql 请求与 php