ENIAC, singkatan dari Electronic Numerical Integrator And Computer, adalah komputer elektronik penuh pertama yang didesain agar Turing-complete, yang mampu diprogram ulang dengan cara mengatur ulang kabelnya agar dapat menyelesaikan segala jenis masalah perhitungan.
Ia didahului oleh Z3 karya Konrad Zuse, yang dapat diprogram dengan kaset secara penuh namun masih mekanikal dan oleh komputer Colossus buatan Inggris yang meski elektronik sepenuhnya namun bukan untuk tujuan umum. Keperluan untuk mengatur ulang kabel ENIAC dihapuskan pada 1948.
ENIAC dikembangkan dan dibangun oleh Angkatan Darat AS untuk Laboratorium Penelitian Persenjataan mereka dengan tujuan untuk menghitung tabel tembakan senjata. Ide tentang ENIAC dipikirkan dan didesain oleh J. Presper Eckert dan John William Mauchly dari Universitas Pennsylvania. Komputer tersebut mulai dibangun pada 17 Mei 1943 sebagai Proyek PX dan dibangun di Moore School of Electrical Engineering sejak pertengahan 1944, dan dioperasikan secara resmi sejak Februari1946 setelah menelan biaya sebesar $500.000. Ia kemudian dimatikan pada 9 November 1946 untuk diperbaharui dan ditingkatkan memorinya. ENIAC diperlihatkan kepada umum pada 14 Februari 1946 di Universitas Pennsylvania dan dipindahkan ke Aberdeen Proving Grounds, Maryland pada 1947. Pada 29 Juli tahun yang sama, ENIAC dinyalakan dan akan terus beroperasi hingga pukul 23:45 pada 2 Oktober 1955.
Sebuah tim yang terdiri dari delapan wanita memprogram ENIAC dengan memanipulasi ribuan kabel dan saklarnya.
ENIAC mendapatkan pemberitaan yang luas karena ukurannya yang besar. Ia memiliki 17.468 tabung vakum, 7.200 dioda kristal, 1.500pemancar, 70.000 resistor, 10.0000 kapasitor dan sekitar 5 juta sambungan yang disolder dengan tangan. Beratnya 27 ton dan ukurannya 2,4 m x 0,9 m x 30 m. ENIAC mengambil luas sekitar 167 m² dan mengonsumsi energi sebesar 160 kW.
Namun ENIAC sebenarnya bukanlah komputer yang canggih di eranya. Tidak seperti Z3 buatan Konrad Zuse, dan MARK buatan Howard Aiken, ENIAC harus diatur ulang kabelnya untuk menjalankan program baru (Z3 dan MARKI menjalankan programnya dari kaset). Lebih lanjut lagi, tidak seperti Z3 dan komputer modern lainya, ENIAC melakukan penghitungan dalam desimal daripada biner.
Cara kerja ENIAC
ENIAC menggunakan sebuah penghitung berbentuk cincin yang mempunyai sepuluh posisi. Perhitungan dilakukan dengan "menghitung" pulsa dengan penghitung cincin dan membuat pulsa pembawa baru apabila counternya sudah beputar kembali ke posisi semula; ide dasarnya adalah untuk meniru roda digit dalam mesin penghitung mekanis.
ENIAC mempunyai dua puluh slot akumulator yang masing-masing nya sepuluh digit dan setiap detiknya dapat melakukan 5000 proses penambahan dan pengurangan sederhana di antara keduapuluh angka-angka tersebut. Empat slot akumulator digunakan dengan sebuah unit "pengali" dan setiap detiknya dapat dilakukan 385 proses perkalian. 5 slot akumulator yang dikendalikan dengan unit "pembagi pengakar pangkat dua" setiap detiknya dapat menjalankan 40 operasi pembagian dan 3 operasi pengakar-dua-an. Sembilan unit lainnya adalah "Unit Pemulai" (memulai dan memberhentikan mesin), "Cycling Unit" (mensinkronkan unit unit yang lain), master programer(mengendalikan sekuens loop), unit pembaca (dikendalikan dengan pembaca punch card IBM), constant transmitter, dan tiga tabel fungsi.
ENIAC menggunakan tabung radio berbasis oktal yang sering digunakan pada masanya, akumulator decimalnya di buat dati flip-flop 6SN7, sedangkan 6L7, 6SJ7, 6SA7 dan 6AC7 digunakan untuk fungsi logika. Sejumlah banyak 6L6 dan 6V6 digunakan sebagai ‘’line driver’’ untuk mengendalikan pulsa diantata kabel di antara rak pengatur.