نمایش نتایج 1 تا 2 از 2

نام تاپیک: برنامه ی بازگشتی در اسمبلی

  1. #1

    برنامه ی بازگشتی در اسمبلی

    سلام
    یه سوال دارم
    دلیل اینکه توی برنامه های بازگشتی اسمبلی بعد از صدا زدن تابع درون خودش می نویسیم
    add sp , 2
    چیه ؟
    و اینکه چرا بعضی وقتا اینجوریه ؟
    add sp,8

  2. #2
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    ایران سرای من است
    پست
    2,655

    نقل قول: برنامه ی بازگشتی در اسمبلی

    نقل قول نوشته شده توسط sataho مشاهده تاپیک
    سلام
    یه سوال دارم
    دلیل اینکه توی برنامه های بازگشتی اسمبلی بعد از صدا زدن تابع درون خودش می نویسیم
    add sp , 2
    چیه ؟
    و اینکه چرا بعضی وقتا اینجوریه ؟
    add sp,8
    اگر منظورتان این هست که چرا مقدار اشاره گر پشته در برنامه های بازگشتی در اسمبلی بصورت اعداد متفاوت برداشته میشه این هست که اگر یک تابع یا proc بصورت far یا near توسط call صدا زده شده باشه در این صورت برای اولی فقط ip و برای دومی علاوه بر ip رجیستر cs هم داخل پشته قرار میگیره به همین دلیل نیاز هست که موقعین اشاره گر رو بر اساس نوع call کاهش و یا افزایس بدیم.
    البته آزاد کردن دستی محل اشاره گر پشته در هنگام کد نویسی اصولی نیست.

قوانین ایجاد تاپیک در تالار

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