Advanced

Calculadora de Exponenciação Modular

Calcule (base^expoente) mod m de forma rápida e exata usando exponenciação binária por quadrados.
Integer base
Non-negative integer
Positive integer
Result: (base^exponent) mod m
9

Computed with exponentiation by squaring

Base
7
Expoente
256
Modulus
13
Result
9
01.63.34.96.58.19.811.413Result lands within [0, m)
Os resultados são estimativas apenas para informação geral e não constituem aconselhamento profissional — sempre verifique resultados importantes de forma independente antes de confiar neles. Leia o aviso legal completo.
Resposta rápida

Como esta calculadora funciona?

A exponenciação modular encontra (base^expoente) mod m. Em vez de calcular a grande potência diretamente, usa exponenciação binária por quadrados: elevar a base ao quadrado e dividir o expoente ao meio em cada passo, multiplicando no resultado nos bits definidos, reduzindo por mod m ao longo do processo. Isso executa em cerca de log2(expoente) multiplicações e permanece exato com inteiros grandes.

Fórmula
result = (base^exponent) mod m, via quadratura: enquanto e > 0, se e é ímpar result = result·b mod m, então b = b·b mod m, e = e >> 1
How this is calculated

Insira três inteiros: a base b, um expoente não negativo e e um módulo positivo m. A calculadora retorna o resto de b elevado a e dividido por m. Calcular b^e diretamente causaria overflow para expoentes grandes, portanto esta ferramenta usa exponenciação por quadrados (também chamada de exponenciação binária).

O algoritmo começa com result = 1 e reduz a base módulo m. Em seguida percorre os bits do expoente do menos significativo ao mais significativo: sempre que o bit atual é 1, multiplica o resultado acumulado pela base atual (mod m), e em cada passo eleva a base ao quadrado (mod m) e desloca o expoente um bit para a direita. Como todo produto intermediário é reduzido módulo m, os números permanecem pequenos e o trabalho é proporcional a log2(e) multiplicações em vez de e delas. Toda a aritmética é realizada com BigInt do JavaScript para que os resultados sejam exatos independentemente do tamanho.

Premissas e casos extremos: o expoente deve ser um número inteiro e >= 0 e o módulo deve ser um inteiro positivo m > 0 (mod 0 é indefinido). A base pode ser negativa; ela é primeiro normalizada para o intervalo 0..m-1 usando ((b mod m) + m) mod m, portanto o resto retornado é sempre não negativo. Quando e = 0 o resultado é 1 mod m. Quando m = 1 o resultado é sempre 0.

Perguntas frequentes

Para expoentes grandes, b^e é astronomicamente grande e lento ou impossível de armazenar. Reduzir módulo m em cada multiplicação mantém todos os valores abaixo de m e termina em cerca de log2(e) passos.

Sim. A base é normalizada para 0..m-1 antes do laço usando ((b mod m) + m) mod m, portanto uma base negativa ainda produz um resto correto não negativo.

Por convenção b^0 = 1, portanto o resultado é 1 mod m (que é 0 quando m = 1).

Também conhecido como

exponenciacao modular
potencia modular
modpow
a elevado a b mod m
exponenciacao rapida
potencia mod

APA

TG we-Calculate Editorial Team. (2026). Calculadora de Exponenciação Modular [Online calculator]. TG we-Calculate. https://we-calculate.com/pt/calculator/modular-exponentiation-calculator

Chicago

TG we-Calculate Editorial Team. "Calculadora de Exponenciação Modular." TG we-Calculate. 2026. https://we-calculate.com/pt/calculator/modular-exponentiation-calculator.

IEEE

TG we-Calculate Editorial Team, "Calculadora de Exponenciação Modular," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/pt/calculator/modular-exponentiation-calculator

BibTeX

@misc{wecalculate_modular_exponentiation_calculator, title = {Calculadora de Exponenciação Modular}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/pt/calculator/modular-exponentiation-calculator}}, year = {2026}, note = {TG we-Calculate} }

Esta calculadora ajudou você?