vahidmy

وبلاگ شخصی وحید محمدی

vahidmy

وبلاگ شخصی وحید محمدی

وحیدمی

وبلاگ شخصی وحید محمدی . یک تایپیست که عاشق علم و تجربه است.


آدرس وبلاگ وحیدمی :

Home Page


https://vahidmy.blog.ir

+


Archive

آرشیو و بایگانی وبلاگ وحیدمی

https://vahidmy.blog.ir/archive

+


نقشه وبلاگ وحیدمی:

Sitemap

https://vahidmy.blog.ir/sitemap.xml

+

خوراکخوان وبلاگ وحیدمی

Feed

RSS

https://vahidmy.blog.ir/rss

+

آدرس مورد استفاده خزنده ها روباتها و موتورهای جستجوگر

Robot

https://vahidmy.blog.ir/robots.txt


+

مشخصات وبلاگ وحیدمی:


ساعات انتشار پست جدید وبلاگ :

بیست و چهار ساعته

وضعیت انتشار پست : نامنظم . در طول شبانه روز و در صورت صلاحدید ؛ پست جدید منتشر می کنم.


نام مدیر : وحید محمدی

گونه : وبلاگ شخصی با آدرس اختصاصی و محتوای عمومی

ژانر : تمام ژانرها

کاربرد : همه منظوره

هدف وبلاگ : به اشتراک گذاشتن دانش و تجربه با مردم و پرداخت زکات علم

مقصد مدیر وبلاگ : کسب رضای خداوند .

جنس وبلاگ : وبلاگ شخصی

تاریخ تاسیس : تیر 1398 خورشیدی



موضوعات وبلاگ : تمام علوم و فنون و مسائل مختلف در تمام زمینه


کپی برداری از مطالب وبلاگ وحیدمی به شرط لینک دادن به آدرس اصلی وبلاگ با دامنه vahidmy.blog.ir ، بلامانع و آزاد است . با خیال راحت ، کپی برداری نمایید . هیچگونه کپی رایت و انحصار برای وبلاگ وحیدمی ، وجود ندارد .

بروزرسانی:

وبلاگ وحیدمی منحصرا توسط سایت بلاگ دات آی آر به آدرس blog.ir میزبانی می شود . بنابراین بجز دامنه vahidmy.blog.ir سایر دامنه ها جعلی و فیک و خطرناک هستند .
برای مشاهده نکات جدید و ترفندهای امنیتی لطفا به آدرس زیر مراجعه فرمایید:

https://vahidmy.blog.ir/post/1



آدرس وبلاگهای تخصصی :

https://spasm.blog.ir

https://fasmy.blog.ir

https://binasm.blog.ir

طبقه بندی موضوعی
مطالب پربحث‌تر
  • ۰۱/۰۴/۱۱
    adc
نویسندگان
پیوندها

ADDPD

شنبه, ۲ مرداد ۱۴۰۰، ۰۱:۰۱ ق.ظ

Assembly is real open source.




addpd

دستور addpd






Usage: ADDPD dest,src Modifies flags:None

روش بکارگیری : از چپ به راست  دستور addpd  ، عملوند مقصد ، عملوند مبدا



Performs an SIMD add of the two packed double-precision floating-point values from the 'src' and the 'dest' operand and stores the packed double-precision floating-point results in the 'dest' operand. The 'src' operand can be an XMM register or a 128-bit memory location. The 'dest' operand is an XMM register.

دستور ADDPD  یک عملیات جمع  SIMD روی دو مقدار ممیز شناور با دقت مضاعف بسته ای روی عملوند مبدا و مقصد اجرا می کند و  نتایج ممیز شناور با دقت مضاعف بسته ای را در عملوند مقصد ذخیره می کند  .  عملوند مبدا می تواند یک رجیستر XMM یا یک مکان 128 بیتی آدرس باشد . عملوند مقصد یک رجیستر XMM می باشد .


دستور ADDPD مخفف عبارت زیر است :


ADD Packed Double-Precision FP Values

 



 



ADDPD xmm1,xmm2/mem128 ; 66 0F 58 /r [WILLAMETTE,SSE2]


در فرمول بالا ، بعد از دستور ADDPD ، عملوند مقصد می تواند یک رجیستر XMM باشد مثلا xmm1  و عملوند مبدا ( عملوند سمت راست ) می تواند یا یک رجیستر xmm  باشد ( مثلا xmm2 ) یا یک آدرس 128 بیتی حافظه باشد .


کاراکتر  /  به  معنای  یا  می باشد . دستور ADDPD در این حالت به کد 660F58 تبدیل می شود . r  در اینجا می تواند به معنای register باشد . SSE2 یک استاندارد جدید است که از تعدادی دستورالعمل جدید پردازنده ی اینتل پشتیبانی می نماید .


نکته : شرکت اینتل : در هر نسل از پردازنده های جدید خود  علاوه بر تمامی دستورات قدیم و امروز ، تعدادی دستور جدید را نیز به معماری پردازنده های خود اضافه می نماید .


بنابراین پردازنده هایی که از استاندارد SSE2 استفاده می کنند در حال حاضر دارای بیشترین دستورات زبان اسمبلی می باشند  و به برنامه نویس زبان اسمبلی قدرت  و آزادی بیشتری اعطا می نمایند .

هرچه تعداد دستورات زبان اسمبلی بیشتر باشد قدرت و انعطاف پذیری برنامه نویس نیز بیشتر می شود زیرا جزئیات بیشتری را می تواند درک کرده و در برنامه های خود بکار گیرد .


باید توجه داشت که اسمبلی یک زبان سطح پایین است و در نتیجه هرچه تعداد دستورالعملهایش بیشتر باشد قدرت و انعطاف پذیری اش  نیز بیشتر می شود زیرا کارهای بیشتری می تواند انجام دهد که سایر زبانها از انجام بسیاری از  این کارها عاجز هستند .


برهمین اساس قدرت پردازنده ی اینتل از پردازنده ی آرم بسیار بیشتر است زیرا دستورالعملهای بسیاری بیشتر و دقیقتری دارد که  جزئیات بسیار بیشتری را شامل می شوند و قدرت مانور پردازنده را برای انجام کارهای سنگین ، بیشتر می نمایند . 




ADDPD performs addition on each of two packed double-precision FP value pairs.

دستور ADDPD  عملیات جمع را روی هرکدام از دو زوج مقدار ممیز شناور بسته ای دقت مضاعف ، اجرا می نماید .



 


dst[0-63] := dst[0-63] + src[0-63],


dst[64-127] := dst[64-127] + src[64-127].




 



The destination is an XMM register. The source operand can be either an XMM register or a 128-bit memory location.

  مقصد ؛ یک رجیستر XMM می باشد ( که در نقش یک عملوند ظاهر می شود زیرا این دستور مربوط به خود پردازنده است ) . عملوند مبدا می تواند یا یک رجیستر XMM  یا یک ادرس  از حافظه ی 128 بیتی باشد .



 


SIMD Floating-Point Exceptions

استثنائات ممیز  شناور SIMD  می تواند در مورد مسائل زیر باشد:



Overflow, Underflow, Invalid, Precision, Denormal.

سرریز ، پاریز ، بی اعتبار ، دقت ، غیرطبیعی



+

الگوی مفهومی  کاربرد این دستور  در RosAsm :


به جای xmm1   و  Label باید  عبارت مناسبی را بنویسیم تا برنامه اجرا شود .


نکته : با توجه به  عملکرد تخصصی این دستور که مستقیما به معماری پردازنده ی اینتل  مربوط می شود امکان دارد که این برنامه هرگز روی کامپیوتر شما اجرا نشود و یا اجرا کردن اش با خطرات غیرقابل پیش بینی  همراه باشد .


ابتدا مطمئن شوید که پردازنده ی کامپیوترتان از استانداردهای تخصصی  XMM و  SSE2 و مجموعه ی دستورالعملهای جدید  ، پشتیبانی می کند .






main:



addpd   xmm1  label


ret


+

+

وحید محمدی - وبلاگ وحیدمی