| |||
新浪首页 > 游戏世界 > 游民论谈 > 文章内容 |
INTELX86体系32位汇编语言速成
游民部落网友free_mind
上回为大家简单介绍了VisualC++InlineAssembly,相信已经有人想实际动手来试试了。然而,要想自由使用InlineAssembly,你首先必须掌握INTELX86体系的32位汇编语言。本文正是为那些已经略有8086汇编语言基础却没接触过X86体系的32位汇编语言的同志们准备的。我们将一起了解和深入INTELX86体系的32位汇编语言。 因为我们的目标是“速成”,如果你能有点基础的话,那么在此之上展开讨论就能让彼此都感觉轻松很多。假若你以前完全没有学习过汇编语言,那么请务必先去找本8086汇编语言的教科书来补习补习之后再来阅读本文。 学习一种的汇编语言,必须了解这种CPU的寄存器、寻址方式以及各种指令。我们就先从寄存器开着手吧。 INTELX86常用寄存器 通用寄存器段寄存器 AH/ALAX(EAX)累加器CS代码段 BH/BLBX(EBX)基址DS数据段 CH/CLCX(ECX)计数器SS堆栈段 DH/DLDX(EDX)数据ES附加段 (FS)386新增的段寄存器 (Exx)为386新增的32位寄存器(GS)386新增的段寄存器 指针寄存器堆栈寄存器 SI(ESI)源索引指针SP(ESP)栈指针 DI(EDI)目的索引指针BP(EBP)基址指针 IP指令指针 状态寄存器
|