Come si usa
Inserisci la base intera a, un esponente intero non negativo b e un modulo intero positivo m. L'esempio in grigio 4, 13, 497 dà 445. Selezionare un campo cancella tutti e tre i valori di esempio prima della digitazione, mantenendo visivamente distinti gli esempi dai tuoi valori. Le basi negative sono accettate; gli esponenti negativi no.
Scegli Calcola o premi Invio per confermare l'espressione attuale. Modificare un valore rimuove subito il vecchio resto e disabilita Copia, così un risultato non viene mai presentato come appartenente a nuovi dati incompleti. Cancella svuota tutti e tre i controlli senza ripristinare l'esempio. Tutti i valori vengono interpretati come interi esatti, non come numeri in virgola mobile.
Metodo dell'elevazione al quadrato ripetuta
Il calcolatore normalizza prima la base nell'intervallo da 0 a m − 1. Poi esamina l'esponente in binario. A ogni passaggio, moltiplica il risultato corrente per il fattore attuale quando il bit meno significativo è 1, eleva al quadrato il fattore e riduce modulo m. L'esponente viene diviso per due tra i passaggi. Questo metodo è spesso chiamato esponenziazione binaria o square-and-multiply.
La riduzione avviene dopo ogni moltiplicazione, quindi l'implementazione non costruisce mai l'intero a^b, solitamente enorme. Il numero di iterazioni cresce con il numero di cifre binarie di b, non con b stesso. Le operazioni esatte di moltiplicazione e resto BigInt evitano la perdita di precisione in virgola mobile.
Leggere il risultato
Il resto è il rappresentante standard non negativo di a^b modulo m. Base normalizzata mostra a mod m prima dell'esponenziazione, particolarmente utile per una base negativa o molto grande. Passaggi di elevazione al quadrato ripetuta indica il numero di bit dell'esponente elaborati: è una traccia dell'implementazione, non il valore numerico dell'esponente.
Per piccoli esempi sicuri, Verifica calcola anche la potenza intera diretta e ne confronta il resto. Per esponenti più grandi indica la verifica tramite elevazione al quadrato ripetuta, perché formare la potenza diretta vanificherebbe lo scopo dell'algoritmo. Il calcolo usa comunque identità modulari esatte a ogni passaggio.
Esempi svolti
Per 4^13 mod 497, l'esponenziazione binaria restituisce 445. La verifica diretta della piccola potenza concorda, perché 4^13 = 67,108,864 e questo intero lascia resto 445 nella divisione per 497.
Per (−2)^5 mod 7, la base normalizzata è 5 e il resto standard è 3. Per qualsiasi modulo positivo, a^0 mod m parte da 1 mod m. Quindi 99^0 mod 13 vale 1, mentre 99^0 mod 1 vale 0. Il caso limite del modulo uno non viene considerato un errore.
Limiti e risoluzione dei problemi
L'esponente deve essere almeno zero e il modulo maggiore di zero. La pagina rifiuta modulo zero e moduli negativi. Base e modulo possono contenere fino a 1,000 cifre decimali significative ciascuno; l'esponente fino a 500. Questi limiti espliciti contengono il lavoro del browser pur supportando valori molto oltre la normale precisione numerica.
Inserisci semplici interi in base 10, senza virgole, spazi interni, punti decimali, notazione scientifica, frazioni o espressioni. Il segno meno è ammesso solo sulla base. Questo strumento non calcola un inverso modulare per esponenti negativi. Usa un calcolatore dedicato all'inverso e verifica la condizione di coprimalità richiesta per quel problema separato.
Uso appropriato e limiti di sicurezza
Le potenze modulari compaiono in esercizi di teoria dei numeri, algoritmi legati alla primalità, sequenze cicliche e protocolli crittografici. Questa pagina è adatta a verifiche aritmetiche trasparenti ed esempi didattici. Non è una libreria crittografica: non offre garanzie di tempo costante, generazione di chiavi, casualità, padding, verifica di protocolli o protezione da canali laterali. Non usare il solo risultato del browser per progettare o certificare un sistema di sicurezza.
Copia risultato contiene espressione, resto, base normalizzata, numero di passaggi e testo di verifica. Conserva il modulo insieme al resto copiato, perché un numero isolato non identifica la sua classe di congruenza. Nel confronto con un altro strumento, verifica che entrambi usino la convenzione del resto non negativo per basi negative.
FAQ
Perché il risultato di una base negativa è positivo?
Lo strumento restituisce il rappresentante standard da 0 a m−1.
L'esponente zero è consentito?
Sì. Il risultato è 1 mod m, compreso 0 quando m=1.
Posso usare un esponente negativo?
No. Serve un inverso modulare e la relativa condizione di coprimalità.
Calcola la potenza completa?
No. Esegue una riduzione dopo ogni moltiplicazione.
È sicuro per le chiavi crittografiche?
È uno strumento aritmetico didattico, non un'implementazione crittografica protetta.