Los primeros dispositivos de computación fueron el ábaco y máquinas mecánicas como la Pascalina, que representaban datos mediante posiciones de engranajes. La primera computadora moderna fue la máquina analítica de Charles Babbage en el siglo XIX, que podía programarse con tarjetas perforadas. Las primeras generaciones de computadoras eran enormes máquinas programadas en lenguajes de bajo nivel, mientras que las generaciones posteriores se hicieron más pequeñas, usaban transistores y lenguajes de alto nivel.