$log2 (لوغاريتم الأساس 2)
آخر تحديث: 2026-10-09
$log2 (لوغاريتم الأساس 2)
يُرجع $log2 اللوغاريتم ذا الأساس 2 لعدد، ويُستخدم في السياقات الحاسوبية مثل عمق البحث الثنائي أو ارتفاع الشجرة الثنائية أو تقدير عرض البت، مثل معرفة عدد البتات التي يحتاجها رقم. الوسيطة الفارغة أو المفقودة تُنتج null؛ ويجب أن يكون الإدخال موجبًا — فالقيم الصفرية أو السالبة تُرجع null. وهو حالة خاصة من $log بأساس ثابت 2، مما يُبقي الكود موجزًا. يعكس $log2 قوى العدد 2، فيكون النظير المقابل لـ $pow: [2, x].
| الفئة | الرياضيات |
|---|---|
| إصدار MongoDB | 1.0+ |
| لغة المثال | mongosh (الطرفية) |
📝 الصيغة
{ $log2: <numeric-expression> }
⚙️ المعلمات
| قيمة رقمية | قيمة رقمية أو تعبير يُحلّ إلى قيمة رقمية؛ يجب أن يكون أكبر من 0. |
|---|
القيمة المرجعة:اللوغاريتم للأساس 2 للإدخال؛ null إذا كان الإدخال غير موجب أو null أو مفقودًا
▶ مثال
نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):
// $log2: تقدير عدد البتات الثنائية التي يحتاجها عدد صحيح
db.numbers.aggregate([
{ $project: {
bits: { $ceil: { $add: [{ $log2: '$value' }, 1] } }
} }
])
المخرجات:
{ '_id': 1, 'bits': 10 }
{ '_id': 2, 'bits': 8 }
📌 ملاحظات
- الأساس ثابت عند 2، أي ما يعادل $log: [x, 2]
- يجب أن يكون الإدخال أكبر من 0؛ القيم الصفرية أو السالبة تُرجع null
- يعكس $pow بأساس 2
🏷️ وسوم ذات صلة
💡 حالات ذات صلة
مزيد من الحالات العملية قريبًا.
📚 دروس ذات صلة
❓ الأسئلة الشائعة
Qمتى أستخدم $log2؟
Aالبحث الثنائي وعمق الشجرة الثنائية وتقدير عرض البت.
Qما قيمة $log2(1024)؟
Aإنها 10، لأن 2 مرفوعة للقوة 10 تساوي 1024.
Qكيف يرتبط $log2 بـ $pow؟
Aإنهما معكوسان: $pow: [2, x] يحسب 2 مرفوعة للقوة x و $log2 يعيده إلى الوراء.