Un sistema de computación moderno consiste de hardware y software. El hardware incluye procesadores, memoria y dispositivos de entrada/salida, mientras que el software incluye sistemas operativos, lenguajes de máquina e interpretadores de bajo nivel que controlan el hardware, así como programas de aplicación que resuelven problemas específicos para los usuarios.