push %rbp
mov %rsp,%rbp
mov %rdi,-0x18(%rbp)
mov %rsi,-0x20(%rbp)
mov -0x18(%rbp),%rax
mov (%rax),%eax
mov %eax,-0x4(%rbp)
mov -0x20(%rbp),%rax
mov (%rax),%edx
mov -0x18(%rbp),%rax
mov %edx,(%rax)
mov -0x20(%rbp),%rax
mov -0x4(%rbp),%edx
mov %edx,(%rax)
mov -0x18(%rbp),%rax
mov (%rax),%edx
mov -0x20(%rbp),%rax
mov (%rax),%eax
add %edx,%eax
pop %rbp
retq
我只是在找人来确认我的想法,我所看到的情况是参数 1 被采用并将 18 置于 rbp 以下,而参数 2 被采用并将 20 置于 rbp 以下,然后在我看来参数设置为每个其他如 x=y 和 y=x 但是最后第二个参数设置为 rax 然后添加到 edx 我相信这是第一个参数然后返回。这是正确的还是我离题了?