- , . , , , . (wraparound arithmetic). - . , . (Saturation arithmetic). MMX- , . , ( ) . , - , .
2.1. ( )
254=11111110
+
5=00000101
=
259<>11111111
- 255. add ad, , 00000011=3, f 1. .
2.2. ( )
+254=11111110
+5=00000101
=
259<>01111111
- 127. add ad, , 00000011=3, f 1. .
2.3. ( )
05=00000101
-
10=00001010
=
-5<> 00000000
2.4. ( )
+05=00000101
-
+10=000001010
=
-5 <> 10000000
- 80h. . sub sbb, , 11111011=-5 , cf 1. .
-, . . 2.1 MMX-.
2.1. -
- | ( ) |
0...255 (00h...0ffh) | |
0...65535 (00h...0ffffh) | |
0...4294967295 (00000000...0ffffffffh) | |
(0000000000000000...0ffffffffffffffffh) | |
-128...127 (80h...7fh) | |
-32768...32767 (8000h...7fffh) | |
-2147483648...2147483647(80000000...7fffffffh) | |
, | (8000000000000000... 7fffffffffffffffh) |
|
|
- , , . () - (). - 32- 64- . :
movd , 32 . , , , -. 32- 32- ;
movq , 64 movd, movq -. , , , -, 64- .
movd -. - , movq. movd -, 32- . , movd .
movd :
movd mem32, rmmx
movd rmmx, mem32
movd rmmx, r32
movd r32, rmmx