عملگرهای شیفت بیتی در آردوینو

blog
۱۳۹۶-۰۲-۳۰
3 دقیقه

عملگرهای شیفت بیتی در آردوینو:

شیفت چپ (>>) ، شیفت راست (<<)

دو عملگر شیفت بیتی در آردوینو وجود دارد: عملگر شیفت چپ >> و عملگر شیفت راست <<. این عملگرها باعث می‌شوند که بیت‌های عملوند سمت چپ، به تعدادی که در عملوند سمت راست مشخص شده است، به سمت چپ یا راست شیفت داده شوند. (جا‌به‌جا شوند.)

سینتکس (نحو):

تعداد بیت >> متغیر : شیفت جپ

تعداد بیت << متغیر : شیفت راست

پارامترها:

متغیر: (از نوع‌های byte ، int، long)

تعداد بیت: عدد صحیح <= 32

مثال:

هنگامی‌که شما مقدار X را به تعداد Y بیت (x << y) شیفت می‌دهید، Y بیت از چپ‌ترین بیت‌های X گم می‌شوند؛ در‌واقع از موجودیت خارج می‌شوند.

عملیات شیفت به چپ درواقع مقدار را در 2 به توان تعداد بیت ضرب می‌کند:  X*Y^2 .

عملگر شیفت چپ در آردوینو

عملگر شیفت چپ در آردوینو

برای مثال، شیفت چپ عدد 10 به تعداد 2 بیت، 40 می‌شود. یعنی 10*2^2=40

مثال:برای ایجاد توان‌هایی از 2، این عبارات مفید هستند:

هنگامی‌که شما مقدار X را به تعداد Y بیت (x >> y) شیفت راست می‌دهید و بالاترین بیت X عدد 1 است، رفتار عملیات به نوع داده‌ی دقیق X بستگی دارد. اگر X از نوع int باشد، بالاترین بیت، بیت علامت است که همان‌طور که در بالا گفتیم، مشخص می‌کند که آیا X منفی است یا نه. در چنین موقعیتی، به دلایلی مبهم، بیت علامت به بیت‌های پایین‌تر کپی می‌شود:

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

اگر مراقب عمل توسعه علامت باشید می‌توانید از عملگر شیفت به راست، به عنوان راهی برای تقسیم مقدار به توان‌های 2، استفاده کنید. برای مثال:

پس عملیات شیفت به راست، در واقع مقدار را به 2 به توان تعداد بیت، تقسیم می‌کند:

شیفت به راست در آردوینو

شیفت به راست در آردوینو

برای مثال شیفت راست عدد 40 به تعداد 2 بیت، 40 می‌شود. یعنی 40/ (2^2)=10

اطلاعات بیشتر از محاسبات bitwise

منبع

اطلاعات
0
0
لینک و اشتراک
profile

Yalda

متخصص الکترونیک

علاقه‌مند به یادگیری چیزهای جدید!

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند. فروش در پالت
family

آیسی | موتور جستجوی قطعات الکترونیک

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

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند. پرسش در سیسوگ فرم
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

قطعات اضافه و بدون استفاده همیشه یکی از سرباره‌‌های شرکتها و طراحان حوزه برق و الکترونیک بوده و هست. پالت سامانه‌ای است که بصورت تخصصی اجازه خرید و فروش قطعات مازاد الکترونیک را فراهم می‌کند.
family

آیسی | موتور جستجوی قطعات الکترونیک

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

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

دغدغه همیشگی فعالان تخصصی هر حوزه وجود بستری برای گفتگو و پرسش و پاسخ است. سیسوگ فروم یک انجمن آنلاین است که بصورت تخصصی امکان بحث، گفتگو و پرسش و پاسخ در حوزه الکترونیک را فراهم می‌کند.
family

دیدگاه ها

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله