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

در علوم کامپیوتر، عبارت بولی عبارتی در زبان‌های برنامه‌نویسی است که هنگام ارزیابی ، مقدار بولی تولید می‌شود. یک مقدار بولی می‌تواند دارای ارزش درست یا نادرست باشد. یک عبارت بولی ممکن است ترکیبی از ثابت‌های بولی با ارزش درست یا نادرست، متغیرهایی از نوع بولین، عملگرهای با ارزش بولی و توابعی با مقدار بولی است.[۱]

عبارات بولی متناظر با فرمول‌های گزاره ای در منطق اند و نوع خاصی از مدارهای بولی هستند.

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

اغلب زبان‌های برنامه‌نویسی دارای عملگرهای بولی 'یا'، 'و' و نقیض هستند. در C و برخی از زبان‌هایی الهام گرفته شده از آن، عملگرهای بولی فوق به ترتیب با با "||" (نویسه لوله دوگانه)، "&&" (امپرسند دوگانه) و "!" (علامت تعجب) نمایش داده می‌شوند، در حالی که عملگرهای بیتی متناظر آن‌ها با "|"، "&" و "~" (تیلده) نشان داده می‌شود.[۲] در نوشتار ریاضی، نمادهای مورد استفاده اغلب «+» (به علاوه)، «·» (نقطه) و اوربار (خطی که در فرمول نویسی بالای حروف نوشته می‌شود)، یا «∨» (ول)، «∧» (وج) و «¬» (نقیض) یا «′» (پریم) هستند (برگرفته از زبان لاتین).

برخی از زبان‌ها، مانند، پرل و روبی، دو مجموعه از عملگرهای بولی، با توابع یکسان، اما اولویت (تقدم) متفاوت دارند. معمولاً این زبان‌ها برای عملگرهایی با اولویت پایین‌تر از عملگر ترکیب عطفی (&)، عملگر ترکیب فصلی (|) و عملگر نقیض (~) استفاده می‌کنند.

برخی از زبان‌های برنامه‌نویسی که از پی‌ال/۱ مشتق شده‌اند، دارای یک نوع رشته از جنس بیت هستند و از بیت(۱) به جای نوع داده بولی جداگانه استفاده می‌کنند. در این زبان‌ها عملگرها هم برای عملیات بولی و هم عملیات بیتی استفاده می‌شوند. زبان‌ها یا منطقی، و منطقی، نقیض یا انحصاری را با «|»، «&»، «¬» (میانوند) و «¬» (پیشوند) نشان می‌دهند.

عملگرهای اتصال کوتاه

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

مثال‌ها

  • عبارت 5 > 3 درست ارزیابی می‌شود.
  • عبارت 3 > 5 نادرست ارزیابی می‌شود.
  • ۵>=۳ و ۳<=۵ عبارات بولی معادل هم هستند که هر دو به عنوان درست ارزیابی می‌شوند.
  • البته، بیشتر عبارات بولی حداقل شامل یک متغیر (X > 3) و حتی بیشتر (X > Y) خواهند بود.

جستارهای وابسته

منابع

  1. A Logical Approach to Discrete Math, Monographs in Computer Science, Springer, p. 25ff, ISBN 978-0-387-94115-8.
  2. Randomness and Completeness in Computational Complexity, Lecture Notes in Computer Science, vol. 1950, Springer, p. 22, ISBN 978-3-540-41492-6.
  3. E.g. for Java see Brogden, William B. ; Green, Marcus (2003), Java 2 Programmer, Que Publishing, p. 45, ISBN 978-0-7897-2861-6.

پیوند به بیرون

  • حساب منطق، نوشته شده توسط جورج بول، مجله ریاضی کمبریج و دوبلین
  1. Gries, David; Schneider, Fred B. (1993), "Chapter 2. Boolean Expressions", A Logical Approach to Discrete Math, Monographs in Computer Science, Springer, p. 25ff, ISBN 978-0-387-94115-8.
  2. E.g. for Java see Brogden, William B.; Green, Marcus (2003), Java 2 Programmer, Que Publishing, p. 45, ISBN 978-0-7897-2861-6.