汇编语言中的数字地址

时间:2014-02-18 16:25:34

标签: assembly

为什么在编写访问变量的指令时使用数字地址不是一个好主意?我一直在学习汇编语言,这个问题就是我遇到的问题。

2 个答案:

答案 0 :(得分:0)

使用数字地址将您绑定到内存中的特定位置。通常情况下,应用程序可以加载到内存中的任何位置,因此如果将其加载到与编程时假设不同的位置,则无法运行。即使您正在编写一个低内存的操作系统内核,新版本的内核也可能导致地址下面的数据或代码变大或变小,在这种情况下,您必须更改所有数字地址。 / p>

目前大多数处理器的间接地址与直接地址一样快,因此使用数字地址无论如何都无济于事。

答案 1 :(得分:0)

这只适用于启动加载器。即使在DOS下,你也永远不知道代码的加载地址。

此外,如果在引用的点(变量,标签,等等)和使用点之间插入多达一行,则数字地址会发生变化。维持是一种痛苦。