qq_42577465
qq_42577465
2019-05-21 18:52
采纳率: 100%
浏览 681

32位汇编的段寄存器有什么用?

32位汇编保留段寄存器,可段寄存器用来做什么呢?如:DS,CS,SS等这类寄存器?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • caozhy
    已采纳

    不是所有的32位操作系统都是页式的,也可以是段页式的,所以还是要用到段寄存器。
    再说,32bit向下兼容16bit代码,那么还是需要用到段寄存器。
    最后,段寄存器还可以用来作为通用寄存器,相同功能的程序,利用的寄存器越多,效率越高。

    点赞 评论
  • weixin_42549874
    柰茶 2019-05-21 19:15

    可以去了解一下汇编语言,段寄存器保存的是段地址,段地址乘上16与偏移地址相加得到数据的物理地址,计算机以此对数据进行寻址。SS保存的是栈的段地址。

    点赞 评论
  • xslsh
    星霜冷噬魂 2019-05-21 19:48

    段寄存器指的是cs,ds,ss,es,fs,gs这些。在win32保护模式下,他们指向各自的描述符。那些描述符,都指向同一个段起始地址(fs除外)。所以win32编程,不需要制定cs,ds,ss等等,因为他们都是一样的。可以认为ds=es=ss=...这就是flat的含义。在编程者看来,各个段都是平坦的,一样的,没有区别

    点赞 评论

相关推荐