انتساب افزوده Augmented Assignment

انتساب افزوده یا Augmented Assignment چیست؟

انتساب افزوده (Augmented Assignment) نوعی عملگر انتساب است که در برخی از زبان‌های برنامه‌نویسی برای ساده‌سازی گونه‌ی خاصی از تخصیص مقادیر به کار می‌رود. به عبارت بهتر این نوع عملگر معادل با انتسابی است که در آن مقدار تخصیص یافته به متغیر از یک عملگر حاصل می‌شود و یکی از عملوندهای این عملگر نیز همان متغیر است. به این عملگر، انتساب مرکب (Compound Assignment) نیز گفته می‌شود.

به عنوان نمونه در عبارت x += 2 از عملگر انتساب افزوده += استفاده شده است. این عبارت دقیقا از نظر حاصل معادل با عبارت گسترده x = x + 2 می‌باشد. به بیان دیگر در انتساب افزوده قرار است به صورت درجا عملی انجام شود که یکی از عملوندهایش یک متغیر است و حاصل آن نیز به همان متغیر تخصیص داده می‌شود.

در زبان‌های برنامه‌نویسی که از این نوع انتساب پشتیبانی می‌شود برای اغلب عملگرهای دودویی نظیر عملگرهای حسابی (انتساب افزوده برای جمع +=، برای تفریق -=، برای ضرب *=، برای تقسیم /=)، عملگرهای شیفت بیتی (انتساب افزوده برای شیفت به چپ <<= و برای شیفت به راست >>=) و … معادل انتساب افزوده وجود دارد.

علاوه بر مزیت سادگی بیشتر در استفاده از انتساب افزوده، هنگامی که از معادل گسترده استفاده می‌شود در واقع دو مرتبه به مکان متغیر مراجعه می‌شود؛ یک مرتبه برای خواندن مقدار متغیر و استفاده از آن به عنوان عملوند و بار دوم برای تخصیص مقدار جدید به همان متغیر. به بیان دیگر در چنین حالتی متغیر باید دو بار ارزیابی (Evaluate) شود در حالی که هنگام استفاده از انتساب افزوده متغیر تنها یک مرتبه ارزیابی می‌شود و در صورت وجود معادل مربوطه در کد ماشین، این عمل به صورت یکجا صورت می‌گیرد.

انتساب افزوده در بسیاری از زبان‌ها از جمله سی (C)، سی پلاس پلاس (C++)، سی شارپ (C#)، ویژوال بیسیک (Visual Basic)، جاوا (Java)، جاوا اسکریپت (JavaScript)، پی اچ پی (PHP)، پایتون (Python) و … پشتیبانی می‌شود.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

واژه‌های مرتبط

انتساب Assignment انتساب یا Assignment چیست؟ انتساب (Assignment) یا تخصیص در دانش برنامه نویسی عملی است که طی آن مقداری به فضای نگه‌داری متناظر با نام یک متغیر تخصیص د...
ASP.NET ASP.NET چیست؟ ASP.NET یک فریم‌ورک کاربردی وب است که برای توسعه‌ی صفحات پویای وب، وب اپلیکیشن‌ها و سرویس‌های وب به کار می‌رود. این محصول که ساخت شرکت ...
زبان اسمبلی Assembly Language زبان اسمبلی یا Assembly Language چیست؟ زبان اسمبلی (Assembly Language) یک زبان برنامه نویسی سطح پایین است که نزدیکی بالایی به دستورالعمل‌های ماشین دا...
واحد محاسبه و منطق Arithmetic Logic Unit – A... واحد محاسبه و منطق یا Arithmetic Logic Unit چیست؟ واحد محاسبه و منطق (Arithmetic Logic Unit به اختصار ALU) یک مدار الکترونیک دیجیتال ترکیبی است که قا...
واسط برنامه نویسی کاربردی Application Programming ... واسط برنامه نویسی کاربردی یا Application Programming Interface - API چیست؟ واسط برنامه نویسی کاربردی (Application Programming Interface به اختصار API...
تغییر دهنده دسترسی Access Modifier تغییر دهنده دسترسی یا Access Modifier چیست؟ تغییر دهنده دسترسی (Access Modifier) در برنامه نویسی شئ‌گرا به گونه‌ای از کلمات کلیدی اطلاق می‌شود که جهت...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *