【发布时间】:2012-08-11 21:11:01
【问题描述】:
维基百科和其他资源描述了可用于 x86 平台(实模式)上的编译器的 different memory models。
我可以看到小模型和小模型之间的区别(在小模型中,代码、堆栈和数据段寄存器指向同一段,在小 CS 中指向一个段,SS 和 DS 指向另一个段),而小型和紧凑型之间的区别(CS、SS 和 DS 指向三个单独的段),但小型和中型之间的区别让我难以理解,因为 CS 都指向一个段,而 SS 和 DS 指向另一个。
我意识到中等模型适用于具有多个代码段的程序,但这种差异是如何实现的?它到底有什么变化?
【问题讨论】:
-
对于中型模型,
jmp将使用远地址,而不是近地址。
标签: assembly compiler-construction x86