Advanced

Calcolatore di Esponenziazione Modulare

Calcola (base^esponente) mod m in modo rapido ed esatto usando l'esponenziazione binaria per quadrati.
Integer base
Non-negative integer
Positive integer
Result: (base^exponent) mod m
9

Computed with exponentiation by squaring

Base
7
Esponente
256
Modulus
13
Result
9
01.63.34.96.58.19.811.413Result lands within [0, m)
I risultati sono stime fornite solo a scopo informativo generale e non costituiscono consulenza professionale — verifica sempre i risultati importanti in modo indipendente prima di farvi affidamento. Leggi l'avvertenza completa.
Risposta rapida

Come funziona questo calcolatore?

L'esponenziazione modulare trova (base^esponente) mod m. Invece di calcolare direttamente l'enorme potenza, usa l'esponenziazione binaria per quadrati: eleva al quadrato la base e dimezza l'esponente a ogni passo, moltiplicando nel risultato sui bit impostati, riducendo mod m per tutto il processo. Questo viene eseguito in circa log2(esponente) moltiplicazioni e resta esatto con gli interi grandi.

Formula
risultato = (base^esponente) mod m, tramite quadrati: finché e > 0, se e è dispari risultato = risultato·b mod m, poi b = b·b mod m, e = e >> 1
How this is calculated

Inserisci tre interi: la base b, un esponente non negativo e, e un modulo positivo m. Il calcolatore restituisce il resto di b elevato a e diviso per m. Calcolare ingenuamente b^e prima andrebbe in overflow per esponenti grandi, quindi questo strumento usa l'esponenziazione per quadrati (chiamata anche esponenziazione binaria).

L'algoritmo inizia con risultato = 1 e riduce la base modulo m. Poi scorre i bit dell'esponente dal meno al più significativo: ogni volta che il bit corrente è 1 moltiplica il risultato corrente per la base corrente (mod m), e a ogni passo eleva al quadrato la base (mod m) e sposta l'esponente a destra di un bit. Poiché ogni prodotto intermedio è ridotto modulo m, i numeri restano piccoli e il lavoro è proporzionale a log2(e) moltiplicazioni anziché e. Tutta l'aritmetica è eseguita con BigInt di JavaScript così i risultati sono esatti indipendentemente dalla dimensione.

Ipotesi e casi limite: l'esponente deve essere un numero intero e >= 0 e il modulo deve essere un intero positivo m > 0 (mod 0 è indefinito). La base può essere negativa; viene prima normalizzata nell'intervallo 0..m-1 usando ((b mod m) + m) mod m, così il resto restituito è sempre non negativo. Quando e = 0 il risultato è 1 mod m. Quando m = 1 il risultato è sempre 0.

Domande frequenti

Per esponenti grandi b^e è astronomicamente grande e lento o impossibile da memorizzare. Ridurre modulo m a ogni moltiplicazione mantiene ogni valore sotto m e termina in circa log2(e) passi.

Sì. La base viene normalizzata in 0..m-1 prima del ciclo usando ((b mod m) + m) mod m, quindi una base negativa dà comunque un resto corretto non negativo.

Per convenzione b^0 = 1, quindi il risultato è 1 mod m (che è 0 quando m = 1).

Conosciuto anche come

esponenziazione modulare
potenza modulo
modpow
a^b mod m
potenza modulare
elevamento a potenza modulo
esponenziazione veloce

APA

TG we-Calculate Editorial Team. (2026). Calcolatore di Esponenziazione Modulare [Online calculator]. TG we-Calculate. https://we-calculate.com/it/calculator/modular-exponentiation-calculator

Chicago

TG we-Calculate Editorial Team. "Calcolatore di Esponenziazione Modulare." TG we-Calculate. 2026. https://we-calculate.com/it/calculator/modular-exponentiation-calculator.

IEEE

TG we-Calculate Editorial Team, "Calcolatore di Esponenziazione Modulare," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/it/calculator/modular-exponentiation-calculator

BibTeX

@misc{wecalculate_modular_exponentiation_calculator, title = {Calcolatore di Esponenziazione Modulare}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/it/calculator/modular-exponentiation-calculator}}, year = {2026}, note = {TG we-Calculate} }

Questo calcolatore ti è stato utile?