Kompyuter
Kasaysayan
thumb|right|Ang [[Zuse Z3, 1941 na inimbento ng Aleman na si Konrad Zuse ang una sa daigdig na gumaganang mapoprogramang buong automatikong makinang na kumukwenta.]] thumb|right|Ang [[EDSAC ang isa sa mga unang kompyuter na nag-implementa ng nakaimbak na programang arkitekturang von Neumann.]] Ang unang nakokontrol ng programang kompyuter ay inimbento ng Aleman na si Konrad Zuse na gumawa ng Z3 na isang elektromekanikal na kumkwentang makina noong 1941. Ang unang mapoprogramang elektronikong kompyuter ang Colossus na ginawa noong 1943 ni Tommy Flowers. Si George Stibitz ay internasyonal na kinikilala bilang ama ng modernong dihital na kompyuter. Habang nagtatrabaho sa Bell Labs noong 1937, inimbento ni Stibitz ang isang nakabatay sa relay na kalkulador na tinaguriang "Model K" (para sa "kitchen table" kung saan niya ito binuo) na ang unang gumamit ng mga binaryong sirkito upang magsagawa ng aritmetikong operasyon. Ang mga kalaunang modelo ay nagdagdag ng mas malaking sopistikasyon kabilang ang masalimuot na aritmetika at pagpoprograma. Ang ilang mga debeloper ng ENIAC sa pagkilala ng mga depekto nito ay nakaisip ng mas mababago at eleganteng disneyo na nakilalang "inimbak na programang arkitektura" o arkitekturang von Neumann. Ang disenyong ito ay unang pormal na inilarawan ni John von Neumann sa unang drapto ng isang ula tng EDVAC na ipinamahagi noong 1945. Ang isang bilang ng mga proyekto na bumuo ng mga kompyuter batay sa nakaimbak na programang arkitektura ay nagsimula sa mga panahong ito. Ang una ay nakumpleto noong 1948 sa University of Manchester sa England na Manchester Small-Scale Experimental Machine (SSEM or "Baby"). Ang Electronic Delay Storage Automatic Calculator (EDSAC) na nakumpleto pagkatapos ng isang tao pagkatapos ng SSEM sa Cambridge University ang unang praktikal, hindi eksperimental na implementasyon ng nakaimbak na programang disenyo at agad na ginamit para sa pagsasaliksik sa unibersidad. Sa sandaling pagkatapos nito, ang makinang orihinal na inilarawan ng papel ni von Neumann-EDVAC ay nakumpleto ngunit hindi nakakita ng buong paggamit para sa karagdagang dalawang taon. Ang halos ng lahat ng mga modernong komputer ay nag-iimplemente ng isang anyo ng nakaimbak na programang arkitektura na gumagawa ritong isang katangian na naglalarawan sa kompyuter. Bagaman ang mga teknolohiyang ginagamit sa mga kompyuter ngayon ay dramatikong nagbago simula nang unang elektronikong pangkalahatang paggamit ng mga kompyuter noong mga 1940, ang karamihan ay gumagamit pa rin ng arkitekturang von Neumann. Simula mga 1950, ang mga siyentipikong Soviet na sina Sergei Sobolev at Nikolay Brusentsov ay nagsagawa ng pagsasaliksik tungkol sa mga ternaryong kompyuter na pinapatakbo sa baseng tatlong sistema ng bilang na −1, 0, at 1 sa halip na sa konbensiyal na binaryong sistema ng bilang na ang karamihan ng mga kompyuter ay nakabatay. Kanilang dinisenyo ang Setun na isang gumaganang ternaryong kompyuter sa Moscow State University. Ang kasangkapan ay inilagay sa isang limitadong produktsiyon sa Unyong Sobyet ngunit napalitan ng mas karaniwang binaryong arkitektura. Ang mga kompyuter na gumagamit ng mga vacuum tube sa mga sangkapt nito ay ginamit sa buong mga 1950 ngunit noong mga 1960 ay malaking pinalitan ng nakabase sa transistor na mga kompyuter na mas maliit, mas mabilis, mas mura at nangangailangan ng kaunting elektrisidad at mas maasahan. Ang unang may transistor na kompyuter ay ipinakita sa University of Manchester noong 1953. Noong mga 1970, ang integrated circuit at kalaunang pagkakalikha ng mga mikroprosesor gaya ng Intel 4040 ay karagdagan nagpaliit ng sukat at gastos at karagdagang nagpabilis at pagiging maasahan ng mga kompyuter. Noong mga huli nang 1970, maraming produkto gaya ng mga video recorder ay naglalaman ng mga dedikadong mga kompyuter na tinatawag na mga microcontroller. Ang mga ito ay nagsimulang pumalit sa mga mekanikal na kontrol sa mga domestikong appliance gaya ng mga washing machine. Ang 1980s ay nakasaksi ng mga kompyuter na pambahay at ngayon ay personal na kompyuter.