C 这个汇编代码做什么?

C 这个汇编代码做什么?,c,linux,gcc,assembly,C,Linux,Gcc,Assembly,当我反汇编我的C代码时,我看到了以下内容。这段代码到底是做什么的?它与浮点有关吗 movsd (%rdx,%rax,8),%xmm0 mulsd %xmm0,%xmm0 movsd %xmm0,0x30(%rsp) 它是一个数字的平方: xmm0=*(rdx*8+rax); xmm0*=xmm0; rsp[0x30]=xmmm0; xmm0是一个浮点寄存器。它将数字平方: xmm0=*(rdx*8+rax); xmm0*=xmm0; rsp[0x30]=xmmm0; xmm0

当我反汇编我的C代码时,我看到了以下内容。这段代码到底是做什么的?它与浮点有关吗

movsd  (%rdx,%rax,8),%xmm0
mulsd  %xmm0,%xmm0
movsd  %xmm0,0x30(%rsp)
它是一个数字的平方:

xmm0=*(rdx*8+rax); 
xmm0*=xmm0; 
rsp[0x30]=xmmm0;
xmm0是一个浮点寄存器。

它将数字平方:

xmm0=*(rdx*8+rax); 
xmm0*=xmm0; 
rsp[0x30]=xmmm0;

xmm0是一个浮点寄存器。

嗯,是的。搜索
mulsd
没有告诉你你在找什么吗?我更感兴趣的是知道什么是xmm0。它是一个平方数:xmm0=*(rdx*8+rax);xmm0*=xmm0;rsp[0x30]=xmmm0@MetallicPrist:google“xmm0”=>顶部链接:是的。搜索
mulsd
没有告诉你你在找什么吗?我更感兴趣的是知道什么是xmm0。它是一个平方数:xmm0=*(rdx*8+rax);xmm0*=xmm0;rsp[0x30]=xmmm0@MetallicPrist:google“xmm0”=>顶部链接: