امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 1
  • 1
  • 2
  • 3
  • 4
  • 5
تفاوت روال و ماکرو
نویسنده پیام
The.Ghost غایب
مدیر بازنشسته
*****

ارسال‌ها: 461
موضوع‌ها: 201
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 674
( 354 تشکر در 158 ارسال )
ارسال: #1
Wink  تفاوت روال و ماکرو
تفاوت روال و ماکرو:

فراخواني يک روال در يک زبان سطح بالا به تعدادي دستورالعمل‌هاي مربوط به انتقال دادن آرگومان‌هاي ذکر شده در دستورالعمل call، کامپايل مي‌شود.

فراخواني يک ماکرو عملاً به دستورالعملهاي داده شده در تعريف ماکروي مزبور بسط داده شده و آرگومان‌ها جايگزين پارامترهاي استفاده شده در تعريف ماکروي مربوط مي‌گردد.

کد يک ماکرو با هر بار فراخواني آن تکرار مي‌شود، اما تنها يک نسخه از کد يک روال وجود دارد.

با توجه به اينکه هيچگونه بالا سري براي انتقال دادن پارامترها يا براي دستورالعمل‌هاي call و ret وجود ندارد، معمولاً ماکروها سريعتر از فراخواني روال‌ها اجرا مي‌شوند ولي اين معمولاً به بهاي طولاني تر شدن کد هدف در مورد فراخواني ماکروها، صورت مي‌گيرد.


تعريف يک ماکرو در بين دستورات MACRO و ENDM قرار داده مي‌شود.

شکل تعريف يک ماکرو به صورت زير مي‌باشد:


ليست پارامترها MACRO نام

دستورالعملهاي زبان اسمبلي

ENDM

جایگاه ماکرو :
تعريف يک ماکرو مي‌تواند در هر جاي برنامه اسمبلي ذکر شود به شرط اينکه اين تعريف قبل از فراخواني‌هاي آن بيايد.

تعدادی ماکرو که بطور معمول در برنامه های اسمبلی استفاده می شود را برای شما قرار میدم!
( ساخت فایل - نوشتن در فایل - بستن فایل - مکان نما - ClrScr - و... )

http://www.iranled.com/forum/thread-17486.html

Assembly Language 039

(آخرین ویرایش در این ارسال: ۲۵-فروردین-۱۳۹۱, ۱۲:۳۸:۰۹، توسط The.Ghost.)
۲۵-فروردین-۱۳۹۱, ۱۲:۰۴:۴۶
ارسال‌ها
پاسخ
تشکر شده توسط : lord_viper
megatron آفلاین
عضو افتخاری
****

ارسال‌ها: 228
موضوع‌ها: 48
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 94
( 171 تشکر در 91 ارسال )
ارسال: #2
RE: تفاوت روال و ماکرو
به به به
تبریک The.Ghost جان...
می دونم تو لایق همچین پستی هستی...
بابا بی معرفت یه خبری به ما میدادی تا زودتر بهت تبریک بگیم :))
۰۲-اردیبهشت-۱۳۹۱, ۲۳:۵۳:۵۵
ارسال‌ها
پاسخ
تشکر شده توسط : The.Ghost


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question ماکرو Admiral 1 2,472 ۲۹-اردیبهشت-۱۳۸۹, ۰۱:۴۰:۴۴
آخرین ارسال: The.Ghost

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS