arm指令中的地址是虚拟地址吗需要和文件地址做偏移纠正吗
在ARM指令中,地址通常是虚拟地址。虚拟地址是由操作系统提供的,它将物理内存映射到每个进程的地址空间。所以在ARM指令中使用的地址是相对于当前进程的虚拟地址。
关于偏移纠正,需要根据具体的情况来决定。如果你的程序是运行在操作系统的上下文中,操作系统会自动帮助你进行地址的偏移纠正,以保证指令正确访问到对应的内存位置。但是如果你的程序是在裸机环境下运行,你可能需要手动进行偏移纠正,以确保指令正确访问到内存位置。
需要注意的是,文件地址通常指的是在编译阶段生成的目标文件或可执行文件中的地址。在运行时,这些地址会被加载到虚拟地址空间中,所以需要进行偏移纠正以映射到正确的虚拟地址。
原文地址: https://www.cveoy.top/t/topic/iKh9 著作权归作者所有。请勿转载和采集!