الفرق بين المراجعتين لصفحة: «Arduino/bits and bytes/bitwrite»

من موسوعة حسوب
إضافة قسم "الأمثلة".
طلا ملخص تعديل
 
سطر 18: سطر 18:
مثال على استعمال الدالة <code>bitWrite()‎</code>:<syntaxhighlight lang="arduino">
مثال على استعمال الدالة <code>bitWrite()‎</code>:<syntaxhighlight lang="arduino">
byte bits = 11000111;              // 61
byte bits = 11000111;              // 61
word value = 0011010011101011;
void setup() {
void setup() {
   Serial.begin(9600);
   Serial.begin(9600);

المراجعة الحالية بتاريخ 16:06، 6 نوفمبر 2018

تكتب الدالة bitWrite()‎ قيمة معينَّة على أحد بتات العدد المُمرَّر إليها.

البنية العامة

bitWrite(x, n, b)

المعاملات

x

العدد المراد كتابة قيمة معيَّنة على أحد بِتَّاته.

n

عدد يمثِّل فهرس البت المراد تغيير قيمته؛ يأخذ البت الأقل أهمية (الواقع في أقصى اليمين) الفهرس 0.

b

القيمة المراد كتابتها على البت n وتكون إمَّا 0 أو 1.

القيم المعادة

لا يعاد أي شيء.

أمثلة

مثال على استعمال الدالة bitWrite()‎:

byte bits = 11000111;               // 61
void setup() {
   Serial.begin(9600);
}

void loop() {
  bitWrite(bits, 0, 0);
  Serial.println(bitRead(bits, 0)); // 0
  bitWrite(bits, 3, 1);
  Serial.println(bitRead(bits, 3)); // 1
}

انظر أيضًا

  • الدالة bit()‎: تحسب قيمة بت محدَّد (قيمة البت 0 هي 1، والبت 1 هي 2، والبت 2 هي 4 وهلم جرًّا).
  • الدالة bitClear()‎: تُصفِّر قيمة بت محدَّد (أي تجعل قيمته 0) لمتغير عددي.
  • الدالة bitRead()‎: تقرأ قيمة بت محدَّد لعدد.
  • الدالة bitSet()‎: تضبط قيمة بت محدَّد (أي تجعل قيمته 1) لمتغير عددي.
  • الدالة highByte()‎: تستخرج البايت العلوي (الواقع في أقصى اليسار) للكلمة المُمرَّرة إليها، أو البايت الثاني الذي يلي البايت السفلي الواقع في أقصى اليمين إن زاد حجم البيانات المُمرَّرة إليها عن حجم كلمة (2 بايت).
  • الدالة lowByte()‎: تستخرج البايت السفلي (الواقع في أقصى اليمين) لمتغير أو البيانات المُمرَّرة إليها.

مصادر