我刚刚开始学习汇编,并且不太了解如何添加两个64位数字。我使用Free Pascal IDE,你能不能给我一些评论工作的例子? 我在这里查看了相关问题,但对我来说还不清楚
答案 0 :(得分:0)
首先,x86架构不允许(通常)允许对两个内存操作数进行操作。因此,寄存器中必须至少有一个操作数。
接下来,只有少数三元操作,所以通常使用两个操作数。那是你不能做的(如果用C表示法表示)a = b + c
而只是a += b
。
接下来,您应指定使用的32位或64位模式。对于64位模式,添加非常简单:add rax, rdx
(rax + = rdx)。对于32位模式,您需要两个操作:add eax, edx
然后adc ecx, ebx
(ecx:eax + = ebx:edx)此处adc
添加了&{39}。 - 必须在第一次添加后设置进位后标志(但在其他任何操作改变之前)。