בסעיף הקודם הצגנו את הפעולות הבוליאניות התקניות של שפת . C פעולות אלה מתייחסות למשתנים שלמים . ( sign / unsigned char / int ) בשפת C 51 קיימת הרחבה של הפעולות הבוליאניות עבור משתנה מסוג סיבית . bit - הרחבה זו מתייחסת לפעולות הלוגיות not , and , or ו- xor בלבד . דוגמה 3 . 15 מימוש פונקציה לוגית בעלת שלושה משתנים בדוגמה זו נציג מימוש של פונקציה לוגית בעלת שלושה משתנים . y = f ( a , b , c ) = abc + abc הערכים של משתני הפונקציה נקבעים על-פי מפסקים המחוברים להדקי מפתח a-P 1 . 0 , b-P 1 . 1 , c-P 1 . 2 : P 1 ואילו היציאה . y-P 1 . 3 פתרון : + include < reg 51 . h > sbit a = P 1-0 ; sbit b = P 1-1 ; sbit c = P 1-2 ; sbit y = P 1-3 ; void main () { y = a & b &~ c | ~ a &~ b & c ; while ( 1 ); } הסבר : הביטוי מחושב משמאל לימין , וניתנת בו קדימות לפעולת ההיפוך , ~ לאחר מכן לפעולת AND ולבסוף מתבצעת בו פעולת . OR לפיכך , קודם יבוצעו שני הביטויים משני צדי פעולת . OR-ה בביטוי הנמצא מצד שמאל של פעולת OR-ה תבוצע פעולת AND בין , b-ו a ולאחר מכן בין התוצאה ובין ערכו של המשתנה c לאחר שעבר פעולת היפוך . ה...
אל הספר