0
$\begingroup$

As far as I know, XMM is used to store floating point. But Highest width floating point according IEEE754 standard is double precision (64-bit). But why XMM register width is 128-bit. Is another 64-bit space is wasted? If not, then what the purpose of another wasted part (another 64-bit)?

$\endgroup$
3
  • 1
    $\begingroup$ Two double precision floating point numbers, or four single precision floating point numbers, take exactly 128 bits. $\endgroup$
    – gnasher729
    Jul 12, 2022 at 12:18
  • $\begingroup$ An XMM register stores TWO doubles (or FOUR floats). $\endgroup$
    – user16034
    Jul 12, 2022 at 12:33
  • $\begingroup$ I was trying floating point arithmatic operation in assembly, For example addition instruction like this addsd xmm0, xmm1. As you see the another operand stored in xmm1 instead of in xmm0 itself. That assembly piece is just basically |128-bit length| + |128-bit length|. $\endgroup$ Jul 12, 2022 at 15:20

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.