【发布时间】:2021-05-09 00:25:33
【问题描述】:
如果 C 程序更改字节数组中的一个字节,会执行哪些机器指令?硬件是否需要读取 8 个字节,更改一个字节,然后存储(使用 2 次内存操作)?
编辑:特别是 x86-64 架构
【问题讨论】:
-
有很多架构。最好的办法是编写一个小程序来执行此操作并查看生成的程序集。
-
C 和其他高级语言的全部意义在于您不在乎。编译器选择指令。
-
已编辑以添加特定架构。
-
@MSalters 好吧,如果您的程序针对特定架构,那么了解它处理数据的方式以使程序架构友好可能会有所帮助。
标签: c assembly memory x86-64 cpu-architecture