الاتصال عبر MCP →

أدخل الحساب

صيغة رياضية

اعلان

نتائج

ab mod m
٤٤٥
الباقي
الأساس (a) ٤
الأس (b) ١٣
القاعدة (m) ٤٩٧

ما هو الأس النمطي؟

الأس النمطي (Modular Exponentiation) هو حساب القيمة \(a^b \bmod m\) — أي باقي قسمة القوة \(a^b\) على القاعدة m. وهو من أهم العمليات في نظرية الأعداد وعلم التشفير، إذ تعتمد عليه خوارزميات شهيرة مثل RSA وتبادل المفاتيح بطريقة ديفي–هيلمان (Diffie–Hellman) والتواقيع الرقمية. وحتى عندما تكون القيمة \(a^b\) ضخمة إلى حدٍّ يصعب تخيّله، يظل الناتج بعد القسمة على m عددًا صغيرًا يسهل حسابه.

دائرة تشبه الساعة تُظهر التفاف الأرقام حول مقياس
الحساب التقايسي يلفّ النتائج حول مقياس ثابت، مثل الساعة.

كيفية استخدام الحاسبة

أدخل ثلاثة أعداد صحيحة: الأساس a، والأس غير السالب b، والقاعدة m (عدد صحيح موجب). اضغط على «احسب» لتحصل على باقي القسمة ضمن المجال من 0 إلى m−1. يمكن أن يكون الأساس سالبًا؛ إذ تُحوَّل القيمة السالبة أولًا إلى ما يكافئها ضمن مجال البواقي الصحيح قبل إجراء عملية الرفع للأس.

شرح الصيغة الرياضية

الصيغة الأساسية هي:

$$\text{result} = \text{Base } a^{\text{Exponent } b} \bmod \text{Modulus } m$$

حساب \(a^b\) مباشرةً مستحيل عمليًّا عندما يكون b كبيرًا، لذا تعتمد هذه الأداة على طريقة التربيع والضرب (وتُعرف أيضًا بالأس السريع أو الأس الثنائي). يُقرأ الأس في صورته الثنائية. نبدأ بالناتج \(r = 1\) وبالأساس بعد تصغيره \(\bmod m\)، ثم نُربّع الأساس عند كل بِت من بتات الأس (\(\bmod m\))؛ وكلما كان البِت الحالي يساوي 1 نضرب الناتج في الأساس (\(\bmod m\)). تتطلب هذه الطريقة نحو \(\log_2(b)\) من عمليات الضرب فقط بدلًا من b عملية.

اعلان
مخطط انسيابي لخطوات خوارزمية التربيع والضرب
طريقة التربيع والضرب تعالج الأرقام الثنائية للأس، فتربّع في كل خطوة وتضرب عندما تكون البتة 1.

مثال محلول

لنحسب \(4^{13} \bmod 497\). الأس 13 في النظام الثنائي هو 1101. وبتطبيق طريقة التربيع والضرب: \(4^1 = 4\)، و\(4^2 = 16\)، و\(4^4 = 256\)، و\(4^8 = 256^2 = 65536 \equiv 30 \pmod{497}\). وبما أن \(13 = 8 + 4 + 1\)، نضرب القوى المقابلة: $$30 \times 256 \times 4 = 30720 \equiv 445 \pmod{497}$$ وبذلك يكون \(4^{13} \bmod 497 = \) 445.

الأسئلة الشائعة

ماذا لو كان الأس يساوي 0؟ أي عدد مرفوع للأس 0 يساوي 1، فيكون الناتج \(1 \bmod m\) (وهو 0 عندما تكون \(m = 1\)).

هل يمكن أن يكون الأساس سالبًا؟ نعم. يُحوَّل الأساس السالب أولًا إلى الباقي الموجب المكافئ له \(\bmod m\)، لذا يقع الناتج دائمًا بين 0 وm−1.

لماذا لا نحسب a^b ثم نأخذ باقي القسمة مباشرةً؟ في أحجام التشفير الواقعية، تتكوّن القيمة \(a^b\) من ملايين الأرقام. إن أخذ الباقي \(\bmod m\) عند كل خطوة يُبقي الأعداد صغيرة ويجعل الحساب سريعًا.

آخر تحديث: