Framstegen som gjorde det möjligt för datorer att bli mer än enkla datakalkylatorer var utvecklingen av
lagrat-programarkitektur .
Innan lagrade programdatorer var maskiner som tidiga kalkylatorer i huvudsak hårddisk för att utföra specifika beräkningar. För att ändra beräkningen var du tvungen att fysiskt koppla om eller konfigurera om maskinen.
Smorerad programarkitektur, banbrytande av John von Neumann (även om andra bidrog avsevärt), tillät programmet att lagras i datorns minne tillsammans med data. Detta innebar att datorn lätt kunde omprogrammeras helt enkelt genom att ladda en ny uppsättning instruktioner i minnet, vilket gör den oerhört flexibel och mångsidig. Denna grundläggande förändring gjorde det möjligt för datorer att utföra ett stort antal uppgifter utöver enkel aritmetik och lägga grunden för modern datoranvändning.