روش دسترسی به رسانه که در آن یک توکن بهصورت مداوم در شبکه میان دستگاهها جابهجا میشود و تنها دستگاهی که توکن را در اختیار دارد میتواند داده ارسال کند.
اولویت عملگرها (Operator Precedence) به ترتیب اولویت اجرای عملگرها در ارزیابی یک عبارت گفته میشود. در برنامهنویسی، هنگامی که چندین عملگر در یک عبارت وجود داشته باشد، اولویت عملگرها تعیین میکند که کدام عملگرها ابتدا اجرا شوند. این مفهوم بهویژه در شرایطی که عملگرهای مختلفی مانند جمع، ضرب، تقسیم و مقایسه در یک عبارت وجود دارند، اهمیت زیادی دارد.
اولویت عملگرها بهطور پیشفرض در زبانهای مختلف برنامهنویسی تعریف شده است. برای مثال، عملگرهای ضرب و تقسیم معمولاً از عملگرهای جمع و تفریق اولویت بیشتری دارند. در صورت وجود پرانتز در عبارت، پرانتزها بالاترین اولویت را دارند و ابتدا اجرا میشوند. این امر باعث میشود که برنامهنویسان بتوانند بهراحتی ترتیب اجرای عملیاتها را کنترل کنند.
در بیشتر زبانهای برنامهنویسی مانند Python، Java و C++، عملگرهای مختلف دارای اولویتهای متفاوتی هستند. در اینجا یک جدول از برخی عملگرها و اولویتهای آنها در بیشتر زبانها آورده شده است:
| اولویت | عملگرها |
|---|---|
| 1 | () - پرانتز (اولویت بالاترین) |
| 2 | ! - عملگر NOT |
| 3 | *, /, % - ضرب، تقسیم و باقیمانده |
| 4 | +, - - جمع و تفریق |
| 5 | ==, !=, <, >, <=, >= - مقایسهها |
| 6 | && - عملگر AND |
| 7 | || - عملگر OR |
در این جدول، میتوان دید که پرانتز (که بالاترین اولویت را دارد) اول از همه اجرا میشود. سپس عملگرهای منطقی و مقایسهای پس از عملگرهای ریاضی (ضرب، تقسیم و جمع) ارزیابی میشوند. این ترتیب اولویت در بیشتر زبانهای برنامهنویسی مشابه است.
در زبان Python، اولویت عملگرها بهطور مشابه رعایت میشود. در اینجا یک مثال از نحوه تأثیر اولویت عملگرها در Python آورده شده است:
x = 10 y = 5 z = 2 result = x + y * z # ضرب اول انجام میشود print(result) # خروجی: 20 در این مثال، طبق اولویت عملگرها، عملگر ضرب قبل از جمع اجرا میشود. بنابراین، ابتدا y * z محاسبه شده و سپس x + result انجام میشود. نتیجه آن 20 است.
در زبان Java نیز اولویت عملگرها مشابه Python است. در اینجا یک مثال از نحوه تأثیر اولویت عملگرها در Java آورده شده است:
public class Main {
public static void main(String[] args) {
int x = 10;
int y = 5;
int z = 2;
int result = x + y * z; // ضرب اول انجام میشود
System.out.println(result); // خروجی: 20
} } در اینجا نیز، همانند Python، اولویت عملگرها باعث میشود که ابتدا ضرب انجام شده و سپس جمع صورت گیرد.
در زبان C++، اولویت عملگرها مشابه Python و Java است. در اینجا یک مثال از نحوه تأثیر اولویت عملگرها در C++ آورده شده است:
#include <iostream> using namespace std; int main() {
int x = 10;
int y = 5;
int z = 2;
int result = x + y * z; // ضرب اول انجام میشود
cout << result << endl; // خروجی: 20
return 0; } در اینجا نیز، مانند Python و Java، اولویت عملگرها بهطور مشابه عمل میکند. ابتدا ضرب انجام شده و سپس جمع محاسبه میشود.
با استفاده از پرانتز، میتوان اولویت اجرای عملگرها را تغییر داد. بهعنوان مثال، در صورتی که بخواهید جمع اول انجام شود، میتوانید از پرانتز استفاده کنید:
result = (x + y) * z # جمع اول انجام میشود print(result) # خروجی: 30 در اینجا، با استفاده از پرانتز، جمع اول انجام میشود و سپس ضرب انجام میشود. نتیجه آن 30 است.
اولویت عملگرها یکی از مفاهیم کلیدی در برنامهنویسی است که به شما کمک میکند تا ترتیب اجرای عملیات را بهطور صحیح کنترل کنید. استفاده صحیح از اولویتها و پرانتزها میتواند کد شما را بهینهتر و از اشتباهات منطقی جلوگیری کند.
برای اطلاعات بیشتر، میتوانید از سایت saeidsafaei.ir و اسلایدهای محمد سعید صفایی بهرهبرداری کنید.
در این مبحث، به معرفی انواع دستورالعملهای شرطی پرداخته میشود و در راستای آن، عملگرهای منطقی بهطور کامل مورد بررسی قرار میگیرند. همچنین، با مفاهیمی مانند بلوک دستورالعمل، ارزیابی میانبری و تله سقوط آشنا میشویم. در نهایت، انواع کلمات کلیدی در برنامهنویسی معرفی شده و کاربردهای آنها توضیح داده میشود. هدف این جلسه، تقویت درک شرطها و نحوه استفاده صحیح از آنها در نوشتن برنامههای کاربردی است.
روش دسترسی به رسانه که در آن یک توکن بهصورت مداوم در شبکه میان دستگاهها جابهجا میشود و تنها دستگاهی که توکن را در اختیار دارد میتواند داده ارسال کند.
کامپیوتر شخصی است که برای استفاده فردی طراحی شده و شامل انواع مختلفی مانند لپتاپ، دسکتاپ و گوشیهای هوشمند است.
استاندارد شبکههای بیسیم پهن باند برای دسترسی به اینترنت از طریق مناطق وسیع.
یادگیری ماشین توزیعشده به روشهای یادگیری ماشین اطلاق میشود که از چندین گره محاسباتی برای پردازش دادهها بهطور همزمان استفاده میکنند.
نویز ناشی از حرکت الکترونها در مواد نیمههادی یا فلزات که در اثر حرارت ایجاد میشود.
محاسبات مه (Fog) به پردازش دادهها در لبه شبکه (بسیار نزدیک به کاربر) اطلاق میشود که باعث کاهش تأخیر و پهنای باند میشود.
پردازش سیگنال دیجیتال (DSP) به استفاده از الگوریتمها برای تجزیه و تحلیل و پردازش سیگنالهای دیجیتال برای کاربردهای مختلف اطلاق میشود.
درمان واقعیت افزوده به استفاده از فناوریهای AR برای درمان بیماریها و بهبود کیفیت زندگی بیماران گفته میشود.
امنیت بلاکچین به محافظت از دادهها در شبکههای بلاکچین از تهدیدات و حملات سایبری اطلاق میشود.
اخلاق هوش مصنوعی به بررسی چالشها و مسائل اخلاقی مرتبط با استفاده از AI میپردازد.
تحلیل مبتنی بر هوش مصنوعی به استفاده از الگوریتمهای هوش مصنوعی برای پردازش دادهها و استخراج بینشهای مفید و پیشبینی روندها اطلاق میشود.
داده اصلی که توسط فرستنده ارسال میشود و توسط گیرنده دریافت و پردازش میشود. برخلاف سرآیند، این بخش داده اصلی است.
دادههای بزرگ (Big Data) به مجموعههای دادهای اطلاق میشود که حجم و پیچیدگی آنها به قدری زیاد است که نمیتوان با استفاده از ابزارهای سنتی آنها را مدیریت کرد.
رایانش به هر گونه فعالیت هدفمند اطلاق میشود که از فرآیندهای مبتنی بر الگوریتم استفاده میکند. این شامل تخصصهای فناوری اطلاعات است که به رایانهها، سختافزارها یا نرمافزارها مربوط میشود.
بلاکچین یک فناوری است که برای ذخیرهسازی دادهها بهصورت غیرمتمرکز و شفاف استفاده میشود و امکان تبادل اطلاعات بدون نیاز به واسطه را فراهم میکند.
علم اعصاب شناختی به مطالعه نحوه عملکرد مغز و سیستمهای عصبی در پردازش اطلاعات و تصمیمگیری اطلاق میشود.
مکانیزمهای اجماع بلاکچین به روشهای مختلفی اطلاق میشود که برای تأیید و تأمین یکپارچگی تراکنشها در شبکههای بلاکچین استفاده میشود.
امنیت مبتنی بر اعتماد صفر (Zero Trust) به رویکرد امنیتی گفته میشود که به هیچکسی در شبکه اعتماد نمیکند مگر اینکه احراز هویت شود.
تداخل زمانی رخ میدهد که دو یا چند دستگاه به طور همزمان اقدام به ارسال داده بر روی یک مسیر انتقال مشترک کنند و باعث میشود دادهها با هم ترکیب شوند.
عمق بازگشت به تعداد دفعاتی اطلاق میشود که یک تابع بازگشتی خود را فراخوانی میکند. هرچه عمق بازگشتی بیشتر باشد، خطر بروز stack overflow بیشتر خواهد بود.
حلقه for برای اجرای دستورالعملها به تعداد مشخص استفاده میشود. این حلقه معمولاً برای تکرار عملیاتهایی که تعداد مشخصی دارند، مفید است.
دستگاهی که برای متصل کردن چندین شبکه محلی LAN به یکدیگر استفاده میشود و در لایه دادهلینک (Layer 2) عمل میکند.
نوع دادهای است که نشاندهنده عدم بازگشت مقدار از یک تابع است. این نوع داده به توابعی که نیازی به بازگشت مقدار ندارند اختصاص داده میشود.
ساختارهایی در برنامهنویسی شیگرا هستند که دادهها و متدهای مربوط به آنها را به یک واحد منطقی گروهبندی میکنند.
رشته مجموعهای از کاراکترها است که به صورت متوالی در حافظه ذخیره میشود. این دادهها معمولاً برای ذخیره اطلاعات متنی مانند نام یا جملات استفاده میشوند.
یادگیری ماشین کوانتومی به استفاده از اصول کوانتومی در الگوریتمهای یادگیری ماشین برای بهبود عملکرد پردازش دادهها اطلاق میشود.
شبکههای مجازیشده به شبکههایی اطلاق میشود که از فناوری مجازیسازی برای ایجاد و مدیریت منابع شبکه استفاده میکنند.
فضای ابری برای واقعیت افزوده که امکان ذخیره و اشتراکگذاری محتواهای AR بین کاربران و سیستمها را فراهم میکند.
شبکهای که در آن دادهها به صورت حلقوی و با استفاده از یک علامت (Token) منتقل میشود.
استاندارد شبکههای بیسیم (Wi-Fi) که پروتکلهای ارتباط بیسیم در باندهای مختلف فرکانسی را تعریف میکند.
در توپولوژی Ad-Hoc، از دستگاه جانبی استفاده نمیشود و هر کامپیوتر به نوعی نقش Access Point را ایفا میکند.
ویژگیای که مسیرهای یاد گرفته شده از یک رابط را با متریک بینهایت به همان رابط ارسال میکند تا از حلقههای مسیریابی جلوگیری شود.
ثباتها یا رجیسترها حافظههای بسیار سریع و کوچک هستند که درون پردازنده قرار دارند. آنها برای ذخیرهسازی دادهها و دستورالعملهای پردازش شده با سرعت بالا استفاده میشوند.
اتصال یا پورتی که برای ارسال دادهها از یک دستگاه به دستگاه دیگر یا شبکه بالادستی استفاده میشود.
سیستمهای شناختی مصنوعی به سیستمهایی اطلاق میشود که از الگوریتمها و مدلهای هوش مصنوعی برای شبیهسازی و بهبود عملکرد مغز انسان استفاده میکنند.