Een digitale computer is ontworpen om gegevens in numerieke vorm te verwerken (zie digitale schakeling); de schakelingen voeren rechtstreeks de wiskundige bewerkingen van optellen, aftrekken, vermenigvuldigen en delen uit. De getallen die door een digitale computer worden verwerkt, worden uitgedrukt in het binaire stelsel; binaire cijfers, of bits, zijn 0 en 1, zodat 0, 1, 10, 11, 100, 101, enz. overeenkomen met 0, 1, 2, 3, 4, 5, enz. Binaire cijfers kunnen in de computerschakelingen gemakkelijk worden uitgedrukt door de aanwezigheid (1) of afwezigheid (0) van een stroom of spanning. Een reeks van acht opeenvolgende bits wordt een byte genoemd; de byte van acht bits staat 256 verschillende aan-uit-combinaties toe. Elke byte kan dus een van de 256 alfanumerieke tekens weergeven, en een dergelijke indeling wordt een single-byte tekenset (SBCS) genoemd; de de facto standaard voor deze weergave is de uitgebreide ASCII-tekenset. Sommige talen, zoals Japans, Chinees en Koreaans, vereisen meer dan 256 unieke symbolen. Het gebruik van twee bytes, of 16 bits, voor elk symbool maakt echter de weergave van maximaal 65.536 tekens of ideografieën mogelijk. Een dergelijke indeling wordt een dubbel-byte tekenset (DBCS) genoemd; Unicode is de internationale norm voor een dergelijke tekenset. Een of meer bytes, afhankelijk van de architectuur van de computer, wordt soms een digitaal woord genoemd; het kan niet alleen de grootte van het getal in kwestie specificeren, maar ook het teken ervan (positief of negatief), en kan ook overbodige bits bevatten die automatische detectie, en in sommige gevallen correctie, van bepaalde fouten mogelijk maken (zie code; informatietheorie). Een digitale computer kan de resultaten van zijn berekeningen opslaan voor later gebruik, kan resultaten vergelijken met andere gegevens, en kan op basis van dergelijke vergelijkingen de reeks bewerkingen die hij uitvoert, wijzigen. Digitale computers worden nu gebruikt voor een breed scala van persoonlijke, zakelijke, wetenschappelijke en overheidsdoeleinden, van elektronische spelletjes, e-mail, sociale netwerken en gegevens- en tekstverwerkingstoepassingen tot desktop publishing, videoconferenties, weersvoorspellingen, gesimuleerde kernwapentests, cryptografie en vele andere doeleinden.
De bewerkingen van een digitale computer worden uitgevoerd door logische schakelingen, dat zijn digitale schakelingen waarvan de enkele uitgang wordt bepaald door de voorwaarden van de ingangen, meestal twee of meer. De verschillende schakelingen die in het inwendige van de computer gegevens verwerken, moeten in hoge mate gesynchroniseerd werken; dit wordt bereikt door ze aan te sturen met een zeer stabiele oscillator, die als de klok van de computer fungeert. Typische kloksnelheden voor personal computers variëren nu van enkele honderden miljoenen cycli per seconde tot enkele miljarden. Bij deze snelheden kunnen digitale computerschakelingen honderden miljarden rekenkundige of logische bewerkingen per seconde uitvoeren, maar supercomputers kunnen meer dan een miljoen maal sneller werken; met dergelijke snelheden kunnen problemen snel worden opgelost die voor een mens onmogelijk met de hand zouden zijn op te lossen. Naast de rekenkundige en logische schakelingen en een aantal registers (opslagplaatsen die sneller toegankelijk zijn dan het hoofdgeheugen en waarin de tussenresultaten van berekeningen worden opgeslagen), bevat het hart van de computer, de centrale verwerkingseenheid (CPU), de schakelingen die de rekenprogramma’s decodeert.bevat het circuit dat de reeks instructies, of het programma, decodeert en ervoor zorgt dat het wordt uitgevoerd.
Geassocieerd met de CPU is de hoofdopslag, of het geheugen, waar resultaten of andere gegevens worden opgeslagen voor perioden van tijd variërend van een kleine fractie van een seconde tot dagen of weken voordat ze worden opgehaald voor verdere verwerking. Het geheugen, dat vroeger bestond uit vacuümbuizen en later uit kleine donutvormige ferromagnetische kernen die aan een draadmatrix waren geregen, bestaat nu uit geïntegreerde schakelingen die elk miljarden halfgeleiderelementen kunnen bevatten. Waar elke vacuümbuis of kern één bit vertegenwoordigde en het totale geheugen van de computer werd gemeten in duizenden bytes (of kilobytes, KB), vertegenwoordigen moderne computergeheugenchips honderden miljoenen bytes (of megabytes, MB) en wordt het totale geheugen van zowel personal computers als mainframecomputers gemeten in miljarden bytes (gigabytes, GB) of meer. Read-only geheugen (ROM), dat niet kan worden beschreven, behoudt te allen tijde zijn inhoud en wordt gebruikt om de besturingsinformatie van de computer op te slaan. Random-access memory (RAM), dat zowel kan worden gelezen als beschreven, gaat verloren telkens als de computer wordt uitgeschakeld. Moderne computers hebben nu een cache-geheugen, dat de CPU sneller kan benaderen dan RAM, maar langzamer dan de registers; gegevens in het cache-geheugen gaan ook verloren wanneer de computer wordt uitgeschakeld.
Programma’s en gegevens die momenteel niet in het hoofdgeheugen worden gebruikt, kunnen worden opgeslagen in een hulpgeheugen of secundair geheugen. Hoewel ponsband en ponskaarten vroeger voor dit doel werden gebruikt, zijn de belangrijkste materialen die tegenwoordig worden gebruikt magnetische band en schijven en flashgeheugenapparaten, die alle kunnen worden gelezen en beschreven, en twee soorten optische schijven, de compact disc (CD) en zijn opvolger de digital versatile disc (DVD). In vergelijking met RAM zijn deze minder duur (hoewel flashgeheugen duurder is dan de andere twee), niet vluchtig (d.w.z. dat gegevens niet verloren gaan wanneer de stroom naar de computer wordt uitgeschakeld), en kunnen zij een gemakkelijke manier bieden om gegevens van de ene computer naar de andere over te brengen. Zo kunnen bedieningsinstructies of gegevens die door een computer worden uitgevoerd, worden opgeslagen en later door dezelfde computer of een andere computer worden gebruikt.
In een systeem dat gebruik maakt van magneetband wordt de informatie opgeslagen door een speciaal ontworpen bandrecorder die enigszins lijkt op een bandrecorder die wordt gebruikt voor het opnemen van geluid. Magneetband wordt thans hoofdzakelijk gebruikt voor de offsite-opslag van grote hoeveelheden gegevens of voor belangrijke systeembackups. Bij magnetische en optische schijfsystemen is het principe hetzelfde; het magnetische of optische medium ligt in een pad, of spoor, op het oppervlak van een schijf. De diskdrive bevat ook een motor om de disk rond te draaien en een magnetische of optische kop of koppen om de gegevens op de disk te lezen en te schrijven. Schijfstations bestaan in verschillende vormen, waarbij het belangrijkste verschil is of de schijf kan worden verwijderd uit de schijfassemblage. Flashgeheugenapparaten, zoals USB-flashdrives, flashgeheugenkaarten en solid-state drives, maken gebruik van een niet-vluchtig geheugen dat in blokken kan worden gewist en opnieuw geprogrammeerd.
Verwisselbare magnetische schijven van mylar in een plastic houder (oudere versies hadden papieren houders) zijn nu grotendeels verouderd. Deze diskettes hebben verschillende capaciteiten, met schijven van zeer hoge dichtheid met een capaciteit van 250 MB: meer dan genoeg om een dozijn boeken ter grootte van Tolstojs Anna Karenina te bevatten. Interne en externe magnetische harde schijven, of harde schijven, zijn gemaakt van metaal en gerangschikt in lagen. Zij kunnen veel meer gegevens bevatten dan floppies of optische schijven, en kunnen veel sneller gegevens lezen en schrijven dan floppies. Naarmate de prijs van harde schijven daalde, werden zij steeds meer opgenomen als onderdeel van personal computers en vervingen zij floppydisks als de standaardmedia voor de opslag van besturingssystemen, programma’s en gegevens.
Compacte schijven kunnen honderden megabytes bevatten, en zijn bijvoorbeeld gebruikt om de informatie op te slaan in een hele meerdelige encyclopedie of een set naslagwerken. DVD is een verbeterde optische opslagtechnologie die tot tien keer meer gegevens kan opslaan dan CD-technologie. CD-ROM’s en DVD-ROM’s kunnen alleen worden gelezen: de schijven worden in de fabriek met gegevens bedrukt, maar kunnen niet worden gewist en met nieuwe gegevens worden herschreven. In het laatste deel van de jaren negentig werden nieuwe optische opslagtechnologieën geïntroduceerd: CD-Recordable (CD-R) en DVD-Recordable (DVD-R, DVD+R), optische schijven waarop door de computer kan worden geschreven om een CD-ROM of DVD-ROM te maken, maar waarop slechts eenmaal kan worden geschreven; en CD-ReWritable (CD-RW), DVD-ReWritable (DVD-RW en DVD+RW), en DVD?Random Access Memory (DVD-RAM), schijven waarop meervoudig kan worden geschreven.
Flashgeheugenapparaten, een nog recentere ontwikkeling, zijn een uitwas van elektrisch wisbaar programmeerbaar read-only geheugen. Hoewel duurder dan magnetische en optische opslagtechnologieën, kan flashgeheugen veel sneller worden gelezen en beschreven, waardoor kortere opstarttijden en snellere toegang tot en opslag van gegevens mogelijk zijn. Omdat flashgeheugen ook bestand is tegen mechanische schokken en steeds compacter is geworden, maakt een USB-flashdrive de eenvoudige, draagbare externe opslag van grote hoeveelheden gegevens mogelijk. Solid-state drives zijn gemakkelijker te openen en te beschrijven dan magnetische harde schijven en verbruiken minder stroom, en zijn gemeengoed geworden in high-end, lichtgewicht notebookcomputers en in high-performance computers. Flashgeheugen wordt ook gebruikt in computertablets en smartphones. Hybride schijven, die een kleinere hoeveelheid flashgeheugen combineren met een grote magnetische harde schijf, maken de zuinige opslag van grote hoeveelheden gegevens mogelijk, terwijl ze profiteren van een sneller reagerende toegang tot vaak gebruikte, maar slechts af en toe gewijzigde besturingssysteem- en programmabestanden.
Gegevens worden in de computer ingevoerd en de verwerkte gegevens worden beschikbaar gemaakt via invoer- en uitvoerapparaten, ook wel randapparatuur genoemd. Alle hulpopslagapparaten worden gebruikt als invoer-/uitvoerapparaten. Jarenlang was de ponskaart het populairste medium voor invoer/uitvoer. De populairste invoerapparaten zijn de computerterminal en de interne magnetische harde schijven, en de populairste uitvoerapparaten zijn het computerscherm dat met een terminal is verbonden (en waarop meestal uitvoer wordt weergegeven die door een grafische verwerkingseenheid is verwerkt) en de printer. De mens kan rechtstreeks met de computer communiceren via computerterminals, door instructies en gegevens in te voeren met behulp van toetsenborden zoals die op schrijfmachines, met behulp van een aanwijsapparaat zoals een muis, trackball of touchpad, of door te spreken in een microfoon die is aangesloten op een computer met spraakherkenningssoftware. Het resultaat van de invoer kan worden weergegeven op een scherm met vloeibare kristallen, een lichtgevende diode of een kathodestraalbuis, of op een printer. Een ander belangrijk input/output-apparaat in moderne computers is de netwerkkaart, waarmee de computer via een bekabelde of radiografische (draadloze) verbinding kan worden aangesloten op een computernetwerk en het internet. De CPU, het hoofdgeheugen, het hulpgeheugen en de invoer-/uitvoerapparaten vormen samen een computersysteem.
De langzaamste bewerkingen die een computer moet uitvoeren, zijn in het algemeen die van de gegevensoverdracht, vooral wanneer gegevens worden ontvangen van of geleverd aan een mens. De centrale processor van de computer is gedurende een groot deel van deze tijd niet actief, en daarom worden twee soortgelijke technieken gebruikt om de kracht van de processor beter te benutten.
Time-sharing, dat op grote computers wordt gebruikt, stelt verscheidene gebruikers op verschillende terminals in staat een enkele computer tegelijkertijd te gebruiken. De computer voert een deel van een taak voor één gebruiker uit, onderbreekt dan die taak om een deel van een andere taak voor een andere gebruiker uit te voeren, enzovoort. Elke gebruiker heeft slechts een fractie van de tijd de beschikking over de computer, maar het omschakelen van de taken gaat zo snel dat de meeste gebruikers zich daar niet van bewust zijn. De meeste van de tientallen miljoenen computers in de wereld zijn op zichzelf staande apparaten voor één gebruiker, die bekend staan als personal computers of werkstations. Voor hen houdt multitasking hetzelfde soort omschakeling in, maar dan voor één gebruiker. Hierdoor kan een gebruiker bijvoorbeeld een bestand laten afdrukken en een ander uploaden naar een Internet-website, terwijl hij een derde bewerkt in een tekstverwerkingssessie en luistert naar een opname die via het Internet wordt gestreamd. Personal computers kunnen ook aan elkaar worden gekoppeld in een netwerk, waarbij elke computer met de andere is verbonden, meestal via een netwerk-, coax- of glasvezelkabel of via radiosignalen (draadloos), zodat alle computers middelen zoals printers, opslagapparatuur met harde schijf en een internetverbinding kunnen delen. Cloud computing is een andere vorm van resource sharing. Cloud computing biedt toegang tot zowel hardware als software via een netwerk, meestal het Internet, en is ontworpen om veel individuen en organisaties die gebruik maken van een breed scala van apparaten zowel gemakkelijke toegang tot computerhulpbronnen als flexibiliteit in het veranderen van het type en het volume van de hulpbronnen waartoe zij toegang hebben, mogelijk te maken.
Voordat een computer voor een bepaald doel kan worden gebruikt, moet hij eerst worden geprogrammeerd, dat wil zeggen, gebruiksklaar worden gemaakt door het laden van een reeks instructies, of programma. De verschillende programma’s waarmee een computer bepaalde aspecten van zijn werking bestuurt, zoals de programma’s voor het omzetten van gegevens van de ene vorm in de andere, staan bekend als software, in tegenstelling tot de hardware, dat wil zeggen de fysieke apparatuur waaruit de installatie bestaat. In de meeste computers is de besturing van de machine van moment tot moment ondergebracht in een speciaal softwareprogramma, dat besturingssysteem of supervisor wordt genoemd. Andere vormen van software zijn assemblers en compilers voor programmeertalen en toepassingen voor zakelijk en thuisgebruik (zie computerprogramma). Software is van groot belang; het nut van een zeer geavanceerde reeks hardware kan worden beperkt door het ontbreken van adequate software.
Elke instructie in het programma kan een eenvoudige, enkele stap zijn, waarbij de computer wordt opgedragen een rekenkundige bewerking uit te voeren, de gegevens van een bepaalde plaats in het geheugen te lezen, twee getallen te vergelijken, of een andere actie uit te voeren. Het programma wordt in het geheugen van de computer ingevoerd precies alsof het gegevens zijn, en bij activering krijgt de machine de opdracht dit materiaal in het geheugen als instructies te behandelen. Andere gegevens kunnen dan worden ingelezen en de computer kan het programma uitvoeren om de specifieke taak te volbrengen.
Omdat computers zijn ontworpen om met binaire getallen te werken, moeten alle gegevens en instructies in deze vorm worden weergegeven; de machinetaal, waarin de computer intern werkt, bestaat uit de verschillende binaire codes die instructies definiëren, samen met de formaten waarin de instructies worden geschreven. Aangezien het voor een programmeur tijdrovend en vervelend is om in de eigenlijke machinetaal te werken, wordt voor het schrijven van de meeste programma’s gebruik gemaakt van een programmeertaal, of taal op hoog niveau, die voor het gemak van de programmeur is ontworpen. De computer wordt geprogrammeerd om deze taal te vertalen in machinetaal en vervolgens het oorspronkelijke probleem op te lossen waarvoor het programma was geschreven. Veel programmeertalen op hoog niveau zijn nu universeel en verschillen weinig van machine tot machine.
- Inleiding
- Analoge computers
- Digitale computers
- Ontwikkeling van computers
- Bibliografie