Los lenguajes de programación permiten escribir algoritmos en un formato comprensible por computadoras y se dividen en tres categorías: máquina, bajo nivel y alto nivel. Los lenguajes máquina son difíciles de usar y dependen del hardware específico, mientras que los lenguajes de alto nivel facilitan la programación al ser más comprensibles y portables. La traducción entre estos lenguajes utiliza compiladores e intérpretes para convertir el código fuente en código ejecutable.