آردوینو آموزش آردوینو

آموزش آردوینو – بخش پنجم استفاده از عملگرها در برنامه نویسی آردوینو

arduino-basic-tutorial-part-five-operators-in-programming-digispark
نوشته شده توسط پریسا پوربلورچیان

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

 


عملگرها Operators


عملگرها نمادهایی هستند که اعمال خاصی را انجام میدهند، جمع، تفریق، ضرب. در آموزش های قبلی با انواع داده و متغیرها آشنا شدیم. قدم بعدی باید عملیاتی را روی آن انجام داد. برای انجام عملیات باید از عملگرها استفاده کرد.

  •  عملگرهای محاسباتی
  • عملگرهای رابطه ای
  • عملگرهای منطقی
  • عملگرهای ترکیبی
  • عملگرهای بیتی

 


عملگرهای محاسباتی


عملگرهای محاسباتی، اعمال محاسباتی را روی مقادیر انجام میدهند. در همه ی زبان های برنامه نویسی -, +, *, /  این عملگرها مشترک هستند.

  •  عملگر + جمع کننده است.
  • عملگر – تفریق و منهای یکانی است.
  • عملگر * ضرب کننده است.
  • عملگر / تقسیم کننده است.
  • عملگر % باقیمانده تقسیم است.
  • عملگر — کاهشی است.
  • عملگر ++ افزایشی است.

انواع عملگرها در آردوینو - دیجی اسپارک

 

int a = 5;
int b = 10;
int c = 0;
c = a + b;
int a = 5;
int b = 10;
int c = 0;
c = a - b;
int a = 5;
int b = 10;
int c = 0;
c = a * b;
int a = 50;
int b = 10;
int c = 0;
c = a / b;
int x = 0;
x = 7 % 5;  // x now contains 2
x = 9 % 5;  // x now contains 4
x = 5 % 5;  // x now contains 0
x = 4 % 5;  // x now contains 4
x = -4 % 5; // x now contains -4
x = 4 % -5; // x now contains 4
x = 2;
y = ++x;  // x now contains 3, y contains 3
y = x++;  // x contains 4, but y still contains 3
x = 2;
y = --x;  // x now contains 1, y contains 1
y = x--;  // x contains 0, but y still contains 1

 

 

تقدم عملگرهای محاسباتی

وقت در یک برنامه نویسی از چندین عملگر استفاده می‌شود، ترتیب اجرا با دو ویژگی زبان برنامه نویسی ++c تعیین می‌شود.

  •  تقدم عملگرها
  • شرکت پذیری عملگرها

تقدم عملگرهای محاسباتی در برنامه نویسی آردوینو - دیجی اسپارک

 


عملگرهای رابطه ای


عملگرهای ارتباطی ارتباط را مشخص می‌کند. اعمالی مثل مساوی،کوچکتر و بزرگتر، مقایسه با صفر در این بخش قرار میگیرد.

عملگرهای رابطه ای در برنامه نویسی آردوینو - دیجی اسپارک

 


عملگرهای منطقی


عملگرهای منطقی بر روی عبارات منطقی عمل می‌کند. عبارات منطقی دارای دو ارزش درستی و نادرستی است. به عبارتی ارزش نادرستی با صفر یعنی False مشخص می‌شود. ارزش درستی با مقادیر غیر صفر True مشخص می‌شود. ثابت True به عدد یک و ثابت False به عدد صفر تبدیل می‌شود.

عملگرهای منطقی در برنامه نویسی آردوینو - دیجی اسپارک

 

تقدم عملگرهای منطقی و رابطه ای

در ابتدا دو عملگر ! و عملگر && را با هم بررسی کنیم.

  •  نتیجه ی عملگر ! وقتی درست است که دارای ارزش نادرستی باشد.
  • نتیجه ی عملگر && وقتی درست است که ارزش درستی داشته باشد.
  • نتیجه ی عملگر || وقتی نادرست است که ارزش نادرستی داشته باشد.

 


عملگرهای ترکیبی


ترکیب دو عملگر محاسباتی و = عملگرهای ترکیبی را ایجاد می‌کند.

عملگرهای ترکیبی در برنامه نویسی آردوینو - دیجی اسپارک

 


عملگرهای بیتی


تست، مقدار دهی و شیفت کاربرد عملگرهای بیتی است.

عملگرهای بیتی در برنامه نویسی آردوینو - دیجی اسپارک

 

  • نتیجه ی عملگر & وقتی یک است که هر دو بیت یک باشد.
  • نتیجه ی عملگر | وقتی صفر است که هر دو بیت صفر باشد
  • نتیجه ی عملگر ^ وقتی یک است که یکی از بیت ها صفر و دیگری یک باشد.

 عملگر شیفت به راست و شیفت به چپ به صورت زیر تعریف می‌شود.

متغیر >> تعداد شیفت

متغیر << تعداد شیفت

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

 


بررسی عملگرهای کاربردی


برخی از عملگرها شامل هیچکدام از دسته بندی های گفته شده نیست که ما به صورت مجزا به تعریف آن ها میپردازیم.

عملگر ؟

این علمگر یک عبارت را بررسی کرده و سپس بر اساس ارزش آن عبارت که به صورت TRUE و FLASE، نتیجه ی عبارت دیگر را در متغیری قرار میدهد.

متغیر = <عبارت ۱>  ؟    <عبارت ۲>      :  <عبارت ۳>


اگر <عبارت ۱ > دارای ارزش درستی باشد، مقدار ارزیابی شده <عبارت ۲> در متغیر قرار میگیرد و گرنه مقدار ارزیابی شده <عبارت ۳> در متغیر قرار خواهد گرفت.

int a,b;

a = 10;

b = a > 10   ?  a* 2 :  a*5 ;

 

عملگر کاما ,

 

 برای انجام چند عمل در یک دستور از کاما استفاده می‌کنیم. ( خیلی طرفدار داره 🙂 )

متغیر =  (<1> و <2> )

عبارت ۱ با عبارت ۲ در ارتباط است. در ابتدا اولیت با عبارت ۱ است و عبارت ۲ میتواند از نتیجه آن استفاده کند و حاصل عبارت ۲ در متغیر قرار گیرد.

int a ,b;

b = (x = 2 , x*2/2)

 


جمع بندی


اگر به ریاضیات علاقه ندارید، اصلا مهم نیست! ما در این آموزش به معرفی انواع عملگرهای ضروری در برنامه نویسی در محیط آردوینو پرداختیم. برای مقایسه عددی بین دو داده نیاز به ورود عملگرها در برنامه نویسی داریم. آموزش را کامل مطالعه کنید و اگر عملگری که با آن کار نکرده اید در آموزش نیست، از بخش دیدگاه ها اطلاع رسانی کنید تا آموزش به رسانی شود.

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲۸ دیدگاه

    • با سلام عملگرهای منطقی بر روی عبارات منطقی عمل می‌کند. عبارات منطقی دارای دو ارزش درستی و نادرستی است. به عبارتی ارزش نادرستی با صفر یعنی False مشخص می‌شود. ارزش درستی با مقادیر غیر صفر True مشخص می‌شود. ثابت True به عدد یک و ثابت False به عدد صفر تبدیل می‌شود. یعنی زمانی که بخواهید یک ورودی از حالت low به حالت high تغییر کند یکی از روش های استفاده از بررسی زمان on بودن و زمان off بودن است که با شرط نویسی if else و استفاده از عملگر منطقی مثل و یا قابل اجرا است.

    • با سلام
      این مورد کاملا به الگوریتم برنامه بستگی دارد. اگر بخواهیم وضعیت خروجی بین HIGH , LOW مقایسه کنیم و عبارت سوم به عنوان عبارت درست جایگزین شود، استفاده خواهیم کرد.

    • با سلام
      اکثرا مشابه هستند اما پیشنهاد می‌شود حتما از سورس های پایتون استفاده کنید.

  • خسته نباشید من در یک پروژه ؟ رو دیدم و تقریبا هیچی از روش کارش نفهمیدم توضیحات خوبی بود عالی

    • با سلام
      برای ایجاد شرط از عملگرهای یا و میتوانید استفاده کنید. به عنوان مثال اگر در یک بخواهید وضعیت ورودی را تغییر دهید با شرط نوییسی & میتوانید وضعیت را از LOW به HIGH یا برعکس تغییر دهید.

  • سلام.
    در جایی مثلا کد زیر عملگر * چه معنایی داره؟
    ;”const char* ssid = “yourNetworkName
    ;”const char* password = “yourNetworkPassword

    • سلام
      در این قسمت بایستی اطلاعات SSID , Password مودم را وارد کنید.
      “*” به معنی اشاره‌گر به یک متغیر است. در اینجا، ssid یک اشاره‌گر به یک متغیر از نوع const char است.

      اگر ssid به عنوان const char* تعریف شده باشد، این به معنی آن است که ssid به یک آرایه از کاراکترها (یا رشته) اشاره می‌کند و مقدار آن رشته متغیر است. با این کار می‌توانید به رشته‌های مختلف در برنامه دسترسی داشته باشید و آن‌ها را مورد استفاده قرار دهید.

      const char* ssid = “MyWiFiNetwork”;

      در این مثال، ssid به رشته “MyWiFiNetwork” اشاره می‌کند.

  • سلام ممنون از مطالب خوبتون
    من دنبال یک برنامه که اگر مقدار آنالوگ یک پین یکی اضافه شد یک کار و اگر یکی کم شد یک کار دیگه رو انجام بده میگردم لطفا راهنمایی کنید
    ممنون