X86-64 编程:核心知识与 AVX 标量浮点运算
1. X86-64 核心编程要点
在 X86 - 64 编程中,有许多关键的知识点需要掌握。以下是一些重要的内容:
- 数组元素地址计算 :
- 一维数组 :可通过数组的基地址(即第一个元素的地址)、元素索引以及每个元素的字节大小来计算元素地址。
- 二维数组 :利用数组的基地址、行和列索引、列数以及每个元素的字节大小来计算元素地址。
- 寄存器使用规范 :Visual C++ 和 GNU C++ 调用约定将通用寄存器分为易失性和非易失性。函数必须保留其使用的任何非易失性通用寄存器的内容。
- 结构的使用 :X86 - 64 汇编语言代码可以像在 C++ 中一样定义和使用结构。汇编语言结构可能需要额外的填充字节,以确保其在语义上与相应的 C++ 结构等效。
- 字符串指令 :x86 字符串指令 cmpsx、lodsx、movsx、scasx 和 stosx(其中 x = b(字节)、w(字)、d(双字)或 q(四字))可用于比较、加载、复制、扫描或初始化文本字符串,也可用于对其他连续数据结构(如数组和矩阵)执行操作。
- 前缀指令 :前缀 rep、repe、repz、repne 和 repnz 可与字符串指令一起使用,以多次重复字符串操作(RCX 包含计数值)或直到指定的零标志(RFLAGS.ZF)条件出现。
-
超级会员免费看
订阅专栏 解锁全文
35

被折叠的 条评论
为什么被折叠?



