La primera generación de computadoras utilizaba programación basada en lenguaje de máquina y se caracterizaba por máquinas grandes como la ENIAC. La segunda generación introdujo los transistores permitiendo computadoras más pequeñas, confiables y económicas. La tercera generación comenzó a usar circuitos integrados como la IBM 360.