Un decodificador es un circuito combinacional, cuya función es inversa a la del codificador, es decir, convierte un código binario (natural, BCD, etc.) de N bits de entrada y M líneas de salida (N puede ser cualquier entero y M es un entero menor o igual a 2N), tales que cada línea de salida será activada para una sola de las combinaciones posibles de entrada. Normalmente, estos circuitos suelen encontrarse como decodificador / demultiplexor. Esto se debe a que un demultiplexor puede comportarse como un decodificador.
Si por ejemplo se tiene un decodificador de 2 entradas con 22=4 salidas, su funcionamiento sería el que se indica en la siguiente tabla, donde se ha considerado que las salidas se activen con un "uno" lógico:
Tabla de verdad para el decodificador de 2 a 4 líneas
Entradas
Salidas
A1
A0
D3
D2
D1
D0
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
0
0
Un tipo de decodificador muy empleado es el de siete segmentos. Este circuito decodifica la información de entrada en BCD a un código de siete segmentos adecuado para que se muestre en un visualizador de siete segmentos.
Aplicaciones del decodificador
Su función principal es la de direccionar espacios de memoria.
Un decodificador de N entradas es capaz de direccionar 2N espacios de memoria.
Para poder direccionar 1Kib de memoria se necesitarían 10 bits, ya que la cantidad de salidas sería 210, igual a 1024.