در این مقاله قصد داریم به معرفی و تفسیر دو کانونشن معروف فراخوانی توابع، یعنی STDCALL (بخوانید اِس تی دی کال) و CDECL (بخوانید سی دِکِل) بپردازیم و تفاوت‌های آنرا بررسی کنیم. این پست تخصصی بوده و برنامه‌نویسان سطح بالا معمولاً با آن برخوردی ندارند، اما برنامه‌نویسان سطح پایین، کرکرها، هکرها و در کل تمام کسانی که در حوزه مهندسی معکوس نرم‌افزار فعالیت دارند باید با این مفاهیم آشنا باشند.

لازم به ذکر است که این قوانین در زبان‌های برنامه‌نویسی سطح بالا نیز در پشت پرده انجام میگیرد، اما برنامه‌نویسان به لحاظ سطح بالای زبان خود با آن برخورد نمیکنند و کامپیایلر این موارد را انجام میدهد.

تمامی مثال‌های این پست بر اساس سینتکس FASM (که بنظر من بهترین اسمبلر حال حاضر هست) برای شما دوستان فراهم شده است. توجه داشته باشید که این پست یک پست تخصصی و برای برنامه‌نویسان سطح پایین است و اگر برنامه‌نویس سطح بالا هستید ممکن است برای شما گنگ و نامفهوم باشد، اما خواندن آن حتی برای برنامه‌نویسان سطح بالا خالی از لطف نیست.