段寄存器是否在运行时更改?

时间:2012-11-28 14:03:11

标签: assembly

在执行程序期间,段寄存器是否可以更改?我确信可以在汇编中更改它们,但是如果我用c或c ++编写并编译,并且有一些内联asm指令,我可以依靠SS寄存器和其他段寄存器保持不变?

1 个答案:

答案 0 :(得分:2)

如果您使用典型的32位或64位操作系统,那么您几乎可以忽略段寄存器(除了处理线程本地存储,异常处理或系统内容)。 CSDSESSS都处理相同的内存,但不会更改。编译器也假设这一点。