关于汇编语言:CS:IP,SS:SP的问题?

8086用CS:IP取下一条指令的地址,用SS:SP取栈顶地址,由于寄存器位数不够所以才这样做,
但现在主流CPU的CS,SS都32位了,那是不是可以直接用CS,SS就可以下一条指令的地址,栈顶地址呢?
因为现在主CPU的CS,SS位数足够可以表达一个内存单元的地址了呀,

8086的后继版本向下兼容,段寄存器的确够用,但不能向下兼容。

段寄存器:便宜寄存器用于实模式下分段存储方式寻址,
80386及后续机型采用32位结构,在保护模式下,可启用分页存储管理,相应的机制也更复杂
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-24
你理解错了,CS,SS是段地址,还是16位的。
偏移地址EIP ESP才是32位的,在windows下已经可以做到所有的东西都在一个段内。