Sejarah alat hitung
Alat hitung umum pertama

Artikel utama: Analytical Engine
Charles Babbage, seorang insinyur mesin dan polimatik Inggris, mengawali konsep komputer yang dapat diprogram. Dianggap sebagai "bapak komputer", ia membuat konsep dan menciptakan komputer mekanis pertama di awal abad ke-19. Dia membuat difference engine yang revolusioner, dan dirancang untuk membantu perhitungan navigasi. Setelah membangunnya, pada tahun 1833 ia menyadari bahwa desain yang jauh lebih umum, sebuah Analytical Engine, dapat dibuat. Masukan (input) untuk program dan data akan diberikan ke mesin melalui kartu pons. Kartu pons dipakai karena saat itu digunakan untuk mengatur kerja dari alat tenun mekanis, seperti pada mesin tenun Jacquard. Untuk keluaran (output), mesin akan memiliki printer, pemplot kurva, dan bel. Mesin tersebut juga dapat memasukkan angka ke kartu untuk dibaca nanti. Mesin ini menggunakan aritmetika titik-tetap basis desimal.
Analytical Engine menggabungkan unit logika aritmatika, control flow dalam bentuk percabangan dan iterasi bersyarat, dan memori terintegrasi. Hal ini menjadikannya desain pertama dari komputer tujuan umum (general purpose), yang dalam istilah modern dapat dijelaskan sebagai Turing-complete.
Engine memerlukan penyimpanan, atau memori, yang mampu menampung 1.000 bilangan yang masing-masing 40 digit desimal (sekitar 16,7 kB). Unit aritmatika yang disebut "mill", dapat melakukan keempat operasi aritmatika, ditambah operasi perbandingan dan operasi akar kuadrat yang opsional. Seperti central processing unit (CPU) di komputer modern, mill akan mengandalkan prosedur internalnya sendiri, kira-kira setara dengan microcode di CPU modern. Prosedur internal ini disimpan dalam bentuk pasak yang dimasukkan ke dalam drum berputar yang disebut "barel", untuk menjalankan beberapa instruksi yang lebih kompleks yang mungkin diminta oleh program pengguna.
Bahasa pemrograman yang akan digunakan oleh pengguna mirip dengan bahasa assembly modern. Dimungkinkan untuk membuat percabangan dan iterasi bersyarat, sehingga bahasa tersebut bersifat Turing-complete dalam definisi Alan Turing. Tiga jenis kartu pons digunakan: satu untuk operasi aritmatika; satu untuk konstanta numerik; dan satu untuk operasi muat, penyimpanan, dan transfer angka-angka. Ada tiga pembaca terpisah untuk ketiga jenis kartu tersebut.
Mesin Analytical Engine muncul sekitar satu abad lebih cepat dari masanya. Malangnya, proyek ini terhambat oleh berbagai masalah, termasuk perselisihan Babbage dengan kepala perangkitan mesin. Semua suku cadang untuk mesin harus dibuat dengan tangan—hal ini adalah masalah besar bagi mesin dengan ribuan suku cadang. Akhirnya, proyek tersebut dibubarkan dengan keputusan Pemerintah Inggris untuk menghentikan pendanaan. Kegagalan Babbage untuk menyelesaikan mesin analitis terutama disebabkan oleh kesulitan tidak hanya politik dan keuangan, tetapi juga keinginannya untuk mengembangkan komputer yang semakin canggih dan bergerak maju lebih cepat daripada yang bisa diikuti orang lain. Ada Lovelace menerjemahkan dan menambahkan catatan ke karya " Sketch of the Analytical Engine " tulisan Luigi Federico Menabrea . Hal tersebut tampaknya merupakan deskripsi pemrograman yang dipublikasikan pertama kali, jadi Ada Lovelace secara luas dianggap sebagai pemrogram komputer pertama. British Association for The Advancement of Science memberikan penghargaan kepada Charles Babbage untuk penemuan alat ini yang dianggap berjasa bagi perkembangan ilmu penghitungan.
Percy Ludgate melanjutkan jejak Babbage membuat alat hitung umum, meskipun ia tidak mengetahui hasil pekerjaan Babbage. Dia alaha seorang pegawai pedagang jagung di Dublin, Irlandia. Percy secara independen merancang komputer mekanis yang dapat diprogram, yang dia gambarkan dalam sebuah karya yang diterbitkan pada tahun 1909.