现代32位或64位x86汇编

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了现代32位或64位x86汇编相关的知识,希望对你有一定的参考价值。

在学习了基于8086的x86汇编指令后,继续学习了32位、64位的x86汇编指令。其基本原理与8086基本一致,只是增加了X87浮点单元,以及用于浮点运算和多媒体处理的SIMD(Single Instruction Multiple Data,单指令多数据流)指令。

无论是64位、32位、16位、8位处理器,都是可以(不是绝对)向前兼容的。

1.寄存器变化

32位:
(1)通用寄存器扩展到32位,增加到8个
(2)增加了x87浮点单元,及相关指令
(3)地址总线32位

64位处理器:
(1)通用寄存器扩展到64位,增加到16个
(2)兼容32位x87浮点单元,及相关指令,不推荐使用
(3)增加了8个80位浮点寄存器
(4)地址总线48位(不是64位)

2.处理器模式

32位:
(1)保护模式(有个子模式:虚拟8086模式)
(2)实地址模式
(3)系统管理模式
64位:
(1)兼容模式
(2)64位模式

3.浮点运算

32位:
(1)x87的FPU指令
(2)MMX寄存器组和指令集
(3)SSE寄存器组和指令集
(4)AVX寄存器组和指令集
64位:
(1)兼容32位浮点运行指令集
(2)SSE-64寄存器组和指令集
(3)AVX-64寄存器组和指令集

以上是关于现代32位或64位x86汇编的主要内容,如果未能解决你的问题,请参考以下文章

汇编语言-X86处理器架构-64位x86处理器

x86 汇编将两个 32 位数字相乘

x86 - 使用内联汇编设置位

《现代x86汇编语言程序设计》怎么写里边的代码

x86汇编语言

反汇编基本原理与x86指令构造