Programowanie imperatywne jest najbardziej pierwotnym sposobem programowania. Według niego, program jest ciągiem poleceń które ma wykonać komputer. Powszechnie programowanie imperatywne uważane jest za synonim programowania proceduralnego.
W paradygmacie tym obliczenia rozumiemy tu jako sekwencję poleceń zmieniających krok po kroku stan maszyny, aż do uzyskania oczekiwanego wyniku. Natomiast stan maszyny oznacza zawartość całej pamięci oraz rejestrów i znaczników procesora. Ten sposób patrzenia na programy związany jest ściśle z budową sprzętu komputerowego o architekturze von Neumanna, w którym poszczególne instrukcje (w kodzie maszynowym) to właśnie polecenia zmieniające ów globalny stan.
Prawie każdy zestaw komputerowy pracuje w sposób imperatywny. Był on stworzony w celu wykonywania kodu maszynowego, napisanego właśnie w stylu imperatywnym.
Gdyby rozpatrywać programowanie imperatywne z tego – niskopoziomowego punktu widzenia to: stanem programu jest zawartość pamięci komputera, a instrukcjami są komendy składające się na kod maszynowy.