ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.






جهت تبلیغ در وب سایت ECA کلیک کنید.

کاربران برچسب زده شده

نمایش نتایج: از 1 به 2 از 2
  1. #1
    2007/08/16
    57
    0

    کمک در مورد far function

    سلام دوستان تابع زیر یه تابع تو هدر گرافیکه لطفا قالب نوشتن تابه رو واسم تفسیر کنید و چرا وقتی از تابع تو برنامه استفاده میشه فقطarcنوشته میشه؟؟؟
    ar
    کد:
    void    far _BGIENTRY arc(int __x, int __y, int __stangle, int __endangle,
                   int __radius);
  2. #2
    2008/09/02
    اصفهان
    1,897
    37

    پاسخ : کمک در مورد far function

    بترتیب:

    void یعنی مقدار برگشتی تابع مهم نیست یا قابل اعتماد نیست. عوام میگن اصلا مقداری بر نمیگردونه.

    far یعنی این تابع far هست! در ساختاری مثل 8086 دو جور عمل صدا کردن تابع داریم. یکی بصورت داخل سگمنت یا near و دیگری بصورت بین دو سگمنت احتمالا متفاوت یا far. در حالت far علاوه بر آدرس برگشت offset؛ شماره سگمنت cs هم در پشته ذخیره میشه و در هنگام برگشت از پشته بازیابی میشه. معمولا از این مورد مواقعی استفاده میشه که میخوان کد تابع رو در سگمنتی مجزا از بقیه کد ها قرار بدن. در صورتی که بخواییم یک تابع far رو از همون سگمنت که حاوی تابع هست صدا کنیم میتونیم ابتدا سگمنت cs رو push کنیم و بعد به عنوان فراخوانی near صدا کنیم. اما برگشت همواره far باقی میمونه. این نوع فراخوانی باعث کندی اجرای برنامه مخصوصا در حالت حفاظت شده میشه چون مکانیسم های حفاظتی بیشتری رو در CPU فعال میکنه.

    _BGIENTRY نحوه پاس کردن آرگومانها به این تابع رو مشخص میکنه و جسارتا به من و شما ربطی نداره که چیه. ولی ممکنه هر چیزی مثل CDECL یا PASCAL یا FASTCALL یا مشابه باشه.

    بقیه اش هم مسلما خودتون میدونین ولی در هنگام صدا زدن این مشکل کامپایلره که از روی heading و اسم تابع تشخیص بده آیا باید صدا زدن far باشه یا near؛ آرگومانها در رجیستر پاس بشن یا پشته؛ از راست به چپ باشه یا بالعکس؛ پشته رو صدا زننده خالی کنه یا خود تابع. به مجموعه اینا هم میگن:
    calling conventions

نمایش نتایج: از 1 به 2 از 2

موضوعات مشابه

  1. برنامه function دار
    توسط mohamadt730 در انجمن پردازش سيگنال و هوش محاسباتي
    پاسخ: 2
    آخرين نوشته: 2015/06/06, 18:35
  2. فرق بلوک های s-function و matlab function چیه؟
    توسط reza_rouhi در انجمن Matlab
    پاسخ: 5
    آخرين نوشته: 2014/12/03, 20:45
  3. مشکل در یک function
    توسط ya_montazar در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 5
    آخرين نوشته: 2014/02/16, 11:51
  4. function matlab
    توسط riant67 در انجمن پردازش تصوير
    پاسخ: 2
    آخرين نوشته: 2013/12/05, 13:16
  5. function generator
    توسط nazinazi در انجمن میکروکنترلرهای AVR
    پاسخ: 4
    آخرين نوشته: 2010/02/15, 15:46

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •