architecture - 指令在内存中是如何排列的?
问题描述
我正在学习计算机体系结构和组织课程,我们正在研究如何从内存中获取指令并进行解码(使用旧的 IAS 模型作为参考)。但是,我不太明白所说的指令在内存中的样子。
假设我正在制作一个游戏或其他包含大量指令的程序,甚至可能有一些指令可以在多线程上运行(尽管我还没有真正研究过结构层面的多线程)。当程序加载并开始执行时,是否所有指令都分配到一个连续的内存段中,以便程序计数器始终可以通过转到下一个内存位置的指令来遍历它们?或者现代计算机是否有一种与 IAS 完全不同的指令存储方式?
但是要注意:至少可以说,我对内存如何工作的理解仍然非常原始,所以我以一种抽象的方式来考虑内存,它基本上是一个长长的数组,每个位置都是一个字节或一个字。请告诉我这是否是一种错误的可视化方式。
解决方案
推荐阅读
- android - Gluon Mobile for Android = StackOverflowError 设备依赖
- r - 将累积值转换为单个值
- git - Gitlab Pre-Receive Hook 拒绝 SSH 推送
- c++ - 重新排序 QTreeWidgetItem 后 QTreeWidgetItem 中的 QWidget 消失
- angular - ReferenceError:找不到变量:区域
- regex - 正则表达式查找和替换小写大写
- c++ - 如何从 int 一次写入一个字节的文件?C++
- linux - 向 docker 添加新用户并限制其权限
- cmd - 将 lua.exe 添加到我的系统路径
- scala - What is the efficient way to remove subsets from a List[List[String]]?