آموزش C++

مباحث پایه زبان C++

عملگرهای بیتی در زبان C++ – آموزش زبان C++

  • پنجشنبه ۱۵ شهریور ۱۳۹۷
  • بازدید ۵,۰۴۵ نفر

تصویر cpp-bitwise-operators_3912 عملگرهای بیتی در زبان C++ - آموزش زبان C++

عملگرهای بیتی در زبان C++

از عملگرهای بیتی برای دستکاری بیت ها استفاده می شود. در زیر عملگرهای بیتی در زبان C++ را مشاهده می کنید.

عملگرتوضیحاتمثال
&اگر هر دو عملوند true باشند، یک بیت در نتیجه کپی می کند.(A & B) = 12 که برابر است با ۰۰۰۰ ۱۱۰۰
|اگر یکی از عملوندها true باشند، یک بیت در نتیجه کپی می کند.(A | B) = 61 که برابر است با ۰۰۱۱ ۱۱۰۱
^اگر مقدار هر دو عملوند یکسان نباشد (یعنی هر دو true یا هر دو false نباشند)، یک بیت در نتیجه کپی می کند.(A ^ B) = 41که برابر است با ۰۰۱۱ ۰۰۰۱
~عملگر یکانی نقیض می باشد و کارش این است که هر جا ۱ بود ۰ و هر جا ۰ بود ۱ می گذارد.(~A ) = 61 که برابر است با ۱۱۰۰ ۰۰۱۱
>>مقدار عملوند چپ را به مقدار بیت های تعیین شده در عملوند راست، به چپ شیفت می دهد.A << 2 = 240 که برابر است با ۱۱۱۱ ۰۰۰۰
>>مقدار عملوند چپ را به مقدار بیت های تعیین شده در عملوند راست، به راست شیفت می دهد.A >> 2 = 15 که برابر است با ۰۰۰۰ ۱۱۱۱

جدول درستی را برای عملگر های &، | و ^ :

pqp & qp | qp ^ q
00000
01011
11110
10011

فرض کنید A = 60 و B = 13 باشد، آنگاه فرمت باینری آن ها به صورت زیر خواهد بود:

عملگر & (AND بیتی)

در عملگر & اگر مقدار هر دو عملوند برابر ۱ باشد نتیجه ۱ و اگر برابر ۱ نباشند نتیجه ۰ را بر می گرداند.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

عملگر | (OR بیتی)

در عملگر | اگر مقدار یکی از عملوندها برابر ۱ باشد نتیجه ۱ و اگر مقدار هر دو عملوندها ۰ باشد نتیجه ۰ را بر می گرداند.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

عملگر ^ (XOR بیتی)

در عملگر ^ اگر مقدار عملوندها با یکدیگر فرق داشته باشد مقدار ۱ و اگر مقدار عملوندها با هم برابر باشند مقدار ۰ را بر می گرداند.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

عملگر ~ (NOT بیتی)

در عملگر ~ اگر مقدار عملوند برابر ۱ باشد نتیجه ۰ و اگر مقدار عملوند ۰ باشد نتیجه ۱ را بر می گرداند.

توجه! عملگر ~ برخلاف عملگرهای دیگر که روی دو عملوند کار می کنند، فقط یک عملوند دارد.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

عملگر << (شیفت به چپ بیتی)

در عملگر << بیت های مقدار عملوند را به تعداد تعیین شده به سمت چپ شیف داده و از سمت راست به جای مقدار های شیفت داده شده بیت ۰ قرار می دهد.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

عملگر >> (شیفت به راست بیتی)

در عملگر >> بیت های مقدار عملوند را به تعداد تعیین شده به سمت راست شیف داده و از سمت چپ به جای مقدار های شیفت داده شده بیت ۰ قرار می دهد.

مثال:

امتحان کنید

بعد از اجرای دستورات بالا توسط کامپایلر زبان C++ خروجی زیر بدست خواهد آمد:

 

باکس دانلود
ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است