Main logo www.4project.co.il
כל הרכיבים לפרוייקט שלכם
עגלת קניות

העגלה ריקה

האם המוצר במלאי?
[X]
עמוד המוצר מציג את רמת המלאי האמיתית, הזמינה במחסנינו בישראל.
פרטים נוספים
איך מזמינים ומשלמים?
[X]
ההזמנה והתשלום מתבצעים רק דרך האתר.
איסוף או משלוח? כמה זה יעלה?
[X]
האתר מציע 5 אפשרויות משלוח וגם אפשרות לאיסוף עצמי מהמחסן.
אחרי הוספת המוצרים לעגלת הקניות, אפשר לראות בה את האפשרויות, המחירים והערכת זמני הגעת המשלוח.
המחיר יחושב לפי גודל ומשקל המוצרים שבחרת.
פרטים נוספים
מתי ההזמנה מוכנה?
[X]
אין צורך לעדכן אותנו טלפונית על ביצוע ההזמנה. אנו רואים אותה מיד ומטפלים בה במהירות.
כמה מהר? לפי הסטטיסטיקה של 3 חודשים האחרונים, הכוללים גם חגים וחופשים, הזמנות שבוצעו בשעות אלה (יום חמישי בין השעות 2 ל-3) היו מוכנות תוך שעה ו-18 דקות.
פרטים נוספים
ייצור ושירותים
מחלקות מוצרים

פירוט שפת תכנות - =& (פעולת bitwise AND על...)

על ידי Alex » ו' ספטמבר 19, 2014 2:09 pm
פעולה משולבת של השמה ו-AND על סיביות נפוצה בשימוש בין משתנה וקבוע כדי לאלץ סיביות מסוימות במשתנה למצב LOW (ערך 0). במדריכי תכנות בדרך כלל מכנים את הפעולה כניקוי או איפוס של הסיביות (clearing, resetting).

תבחיר
קוד: בחר הכל
x &= y;   // equivalent to x = x & y;

פרמטרים בתחביר:
x - משתנה מסוג char, int או long
y - משתנה מסוג char, int או long או קבוע עם מספר שלם

דוגמה
קוד: בחר הכל
   0  0  1  1    operand1
   0  1  0  1    operand2
   ----------
   0  0  0  1    (operand1 & operand2) - returned result


סיביות שעוברות פעולת AND עם 0 מתאפסים ל-0, כך שאם myByte הוא משתנה מסוג byte, פעולה הבאה תאפס את כולו:
קוד: בחר הכל
myByte & B00000000 = 0;


סיביות שעוברות פעולת AND עם 1 לא משתנות, כך שפעולה הבאה לא תשנה את ערך של המשתנה:
קוד: בחר הכל
myByte & B11111111 = myByte;


שימו לב:
בגלל שאנחנו מתמודדים עם סיביות בפקודה שפועלת על סיביות, יהיה יותר נוח לייצג את המספרים הקבועים בצורה בינרית (binary). למספרים יהיה אותו ערך כמו בצורות ייצוג אחרות, אבל הם יהיו קצת יותר קשים להבנה. למשל ה-B00000000 שבדוגמה נכתב לטובת הבהירות של כמות הביטים במספר, אבל ערך 0 תמיד ישאר 0 בכל שיטות הייצוג.
כתוצאה מכך, כדי לנקות (להפוך ל-0) סיביות 0 ו-1 של משתנה, כאשר כל שאר הסיביות ישארו ללא שינוי, השתמשו בפעולה =& עם קבוע B11111100:
קוד: בחר הכל
   1  0  1  0  1  0  1  0    variable 
   1  1  1  1  1  1  0  0    mask
   ----------------------
   1  0  1  0  1  0  0  0

 variable unchanged
                     bits cleared


כאן תוכלו לראות את אותה פעולה כאשר ערכי הסיביות שונו ל-x בדוגמה:
קוד: בחר הכל
   x  x  x  x  x  x  x  x    variable
   1  1  1  1  1  1  0  0    mask
   ----------------------
   x  x  x  x  x  x  0  0

 variable unchanged
                     bits cleared


כך שאם ערך המשתנה myByte היה B10101010, אחרי פעולת =& עם קבוע B1111100 נקבל B10101000.

ראו גם:
=| (פעולת bitwise OR על...)
& (bitwise AND)
| (bitwise OR)

פירוט שפת תכנות לסביבת Arduino


עמוד זה הוא תרגום של compound bitwise AND (&=) לפי רישיון Creative Commons Attribution-ShareAlike 3.0.