Komputery przetwarzają przekazywane im informacje
z wykorzystaniem algorytmów. Program jest algorytmem zapisanym
w języku zrozumiałym dla maszyny (
asemblerze). Każdy poprawny kod maszynowy da się przełożyć na zestaw instrukcji dla teoretycznego modelu komputera –
maszyny Turinga.
Zwykle algorytmy pracują na danych wejściowych
i uzyskują z nich dane wyjściowe. Informacje zapisane
w pamięci maszyny traktuje się jako jej stan wewnętrzny. Niektóre algorytmy mają za zadanie wyłącznie przeprowadzanie komputera
z jednego stanu wewnętrznego do innego.
Artystyczna wizja maszyny Turinga