ADDSUBPD
addsubpd
دستور ADDSUBPD
Usage: ADDSUBPD dest,src Modifies flags: None
دستور ADDSUBPD روی هیچکدام از رجیسترهای پرچم تاثیر ندارد .
Add/Subtract packed DP FP numbers from 'src' to 'dest'.
این دستور ، اعداد ممیز شناور بسته ای را از عملوندهای مبدا به مقصد ، جمع و تفریق می نماید .
Packed Double-FP Add/Subtract
جمع یا تفریق اعداد ممیز شناور دابل بسته ای
ADDSUBPD xmm1, xmm2/mem128 ; 66 0F 00 /r [Pent4]
این دستور روی پردازنده ی پنتیوم 4 اجرا می شود .
Adds the double-precision floating-point values in the high quadword of the 'src' and 'dest' operands and stores the result in the high quadword of the 'dest' operand. Subtracts the double-precision floating-point value in the low quadword of the 'src' operand from the low quadword of the 'dest' operand and stores the result in the low quadword of the 'dest' operand.
دستور ADDSUBPD ، مقدار ممیز شناور دقت مضاعف درون کواد ورد بالایی عملوندهای مبدا و مقصد را با هم جمع می کند و نتیجه را در کواد ورد بالایی عملوند مقصد ، نگهداری می نماید . سپس همین دستور ، مقدار ممیز شناور دقت مضاعف درون کواد ورد پایینی عملوند مبدا را از کواد ورد پایینی عملوند مقصد تفریق می کند و نتیجه را در کواد ورد پایینی عملوند مقصد ، ذخیره می کند .
When the source operand is a memory operand, it must be aligned on a 16-byte boundary or a general-protection exception (#GP) will be generated.
هنگامیکه عملوند مبدا یک عملوند حافظه می باشد ، باید روی یک مرز 16 بایتی تنظیم شود وگرنه یک استنثای چند حفاظتی ایجاد خواهد شد .
xmm1[63-0] = xmm1[63-0] - xmm2/m128[63-0];
xmm1[127-64] = xmm1[127-64] + xmm2/m128[127-64]
مثال :
main:
addsubpd xmm1 xmm2
ret
+
+
وحید محمدی - وبلاگ وحیدمی