Los ensambladores son un tipo diferente de programa informático que traduce el lenguaje ensamblador a código de máquina. El lenguaje ensamblador es un lenguaje de programación de bajo nivel que está diseñado para traducirse fácilmente a código de máquina. Sin embargo, no se requieren ensambladores para compilar código. Los compiladores pueden traducir el código fuente directamente a código de máquina sin necesidad de un ensamblador.
De hecho, la mayoría de los compiladores modernos no utilizan ensambladores. En cambio, utilizan un proceso llamado "generación de código" para traducir el código fuente directamente a código de máquina. La generación de código es un proceso complejo que implica varios pasos diferentes, pero generalmente es más eficiente que usar un ensamblador.