X86-64 核心编程:整数运算与内存寻址模式详解
1. 整数乘法函数 MulValsU64_a()
在 X86 - 64 编程中,函数 MulValsU64_a() 用于执行一系列整数乘法运算。该函数从 mov r10, rdx 指令开始执行,此指令将参数值 c 复制到寄存器 R10 以便后续使用。接着, mov rax, rdi 指令把参数值 a 复制到寄存器 RAX 。随后的五条 mul 指令依次计算 a * b * c * d * e * f ,之后的 mul qword [rsp + 8] 指令计算 a * b * c * d * e * f * g ,这里的 qword 大小说明符是必需的,它指示 NASM 使用寄存器 RAX 和位于 [RSP + 8] 的四字值进行乘法运算。同样,后续的 mul qword [rsp + 16] 指令( RSP + 16 指向参数值 h )完成所需乘积的计算。
以下是源代码示例 Ch03_01 的结果:
----- Results fo
超级会员免费看
订阅专栏 解锁全文
53

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



