الفرق بين المراجعتين لصفحة: «Algorithms/Bitwise Algorithms»
لا ملخص تعديل |
طلا ملخص تعديل |
||
سطر 2: | سطر 2: | ||
تستخدم خوارزميات البتات Bitwise Algorithms لتنفيذ عمليات على مستوى البت bit-level أو لإجراء تعديلات على البتات وبطرق مختلفة. تكون العمليات المجراة على مستوى البت أسرع من العمليات العادية وتستخدم في بعض الأحيان لزيادة فعالية البرامج. | تستخدم خوارزميات البتات Bitwise Algorithms لتنفيذ عمليات على مستوى البت bit-level أو لإجراء تعديلات على البتات وبطرق مختلفة. تكون العمليات المجراة على مستوى البت أسرع من العمليات العادية وتستخدم في بعض الأحيان لزيادة فعالية البرامج. | ||
فعلى سبيل المثال: للتحقق من كون عددٍ معيّنٍ زوجيًا أو | فعلى سبيل المثال: للتحقق من كون عددٍ معيّنٍ زوجيًا أو فرديًا، يمكن استخدام العامل (<code>AND &</code>). إذ لو جرى تعيين آخر بت في العامل فإنّ العدد يكون فرديًا، وإلا فإنّه زوجي. وهكذا إن لم يساوِ التعبير <code>num & 1</code> صفرًا فإنّ العدد سيكون فرديًا وإلا فإنّه عدد زوجي. | ||
== [[Algorithms/add one|زيادة عدد بمقدار واحد دون استخدام العوامل]] == | == [[Algorithms/add one|زيادة عدد بمقدار واحد دون استخدام العوامل]] == |
مراجعة 20:12، 28 نوفمبر 2019
تستخدم خوارزميات البتات Bitwise Algorithms لتنفيذ عمليات على مستوى البت bit-level أو لإجراء تعديلات على البتات وبطرق مختلفة. تكون العمليات المجراة على مستوى البت أسرع من العمليات العادية وتستخدم في بعض الأحيان لزيادة فعالية البرامج.
فعلى سبيل المثال: للتحقق من كون عددٍ معيّنٍ زوجيًا أو فرديًا، يمكن استخدام العامل (AND &
). إذ لو جرى تعيين آخر بت في العامل فإنّ العدد يكون فرديًا، وإلا فإنّه زوجي. وهكذا إن لم يساوِ التعبير num & 1
صفرًا فإنّ العدد سيكون فرديًا وإلا فإنّه عدد زوجي.
زيادة عدد بمقدار واحد دون استخدام العوامل
تضيف هذه الخوارزمية العدد 1
على العدد المعطى دون استخدام أيٍّ من العوامل الرياضية مثل ‘+’, ‘-‘, ‘*’, ‘/’, ‘++’, ‘–‘
.
التحقق من كون رقمين صحيحين يحملان إشارتين متعاكستين
تتحقّق هذه الخوارزمية ممّا إذا كان رقمان صحيحان يمتلكان إشارتين مختلفتين دون استخدام أيٍّ من العوامل الرياضية.