Los compiladores convierten programas de lenguajes de alto nivel a código de máquina, mientras que los intérpretes lo hacen línea por línea, haciendo que los programas compilados sean más rápidos. Los lenguajes de programación se dividen en alto, bajo y medio nivel. El lenguaje C es considerado de medio nivel y es popular para crear software de sistemas debido a su eficiencia.