Difference between revisions of "Assembler:Commands:COMISS"
Jump to navigation
Jump to search
Hanslhansl (talk | contribs) |
Hanslhansl (talk | contribs) |
||
Line 6: | Line 6: | ||
The '''CF''', '''ZF''' and '''PF''' flags are set according to the result (unordered, greater than, less than, or equal). | The '''CF''', '''ZF''' and '''PF''' flags are set according to the result (unordered, greater than, less than, or equal). | ||
The '''OF''', '''SF ''' and '''AF''' flags are set to 0. | The '''OF''', '''SF ''' and '''AF''' flags are set to 0. | ||
− | |||
− | + | == Command Parameters == | |
{|width="85%" cellpadding="10%" cellpadding="5%" cellspacing="0" border="0" | {|width="85%" cellpadding="10%" cellpadding="5%" cellspacing="0" border="0" | ||
!align="left"|Parameter | !align="left"|Parameter | ||
Line 21: | Line 20: | ||
|} | |} | ||
− | + | == Resulting Flag State == | |
{|width="85%" cellpadding="10%" cellpadding="5%" cellspacing="0" border="0" | {|width="85%" cellpadding="10%" cellpadding="5%" cellspacing="0" border="0" | ||
!align="left"|Parameters | !align="left"|Parameters | ||
Line 48: | Line 47: | ||
|1 | |1 | ||
|} | |} | ||
+ | The unordered result is returned if either source operand is a NaN (QNaN or SNaN). | ||
+ | The OF, SF and AF flags are set to 0. | ||
== Examples == | == Examples == |
Revision as of 15:57, 25 March 2022
command comiss operand1, operand2
Compares the single-precision floating-point (single-fp) value in the low doubleword of the first operand with the single-fp value in the low doubleword of the second operand and sets the status flags in the (E)FLAGS register.
The CF, ZF and PF flags are set according to the result (unordered, greater than, less than, or equal). The OF, SF and AF flags are set to 0.
Command Parameters
Parameter | Description |
---|---|
operand1 | The first operand to compare. Must be a XMM register. |
operand2 | The second operand to compare. May be an XMM register or a 32 bit memory location |
Resulting Flag State
Parameters | ZF | CF | CF |
---|---|---|---|
operand1 < operand2 | 0 | 0 | 1 |
operand1 = operand2 | 1 | 0 | 0 |
operand1 > operand2 | 0 | 0 | 0 |
unordered | 1 | 1 | 1 |
The unordered result is returned if either source operand is a NaN (QNaN or SNaN). The OF, SF and AF flags are set to 0.
Examples
comiss xmm2,xmm5
comiss xmm2,[eax]
comiss xmm0,[00123ABC]