\transSec{DATAMATERNES STRUKTUR OG ARBEJDEMÅDE}{Die Struktur und Arbeitsweise der Datenautomaten}

\trans{
Verden over findes der i dag omkring 50.000 datamater i brug og tallet er hastigt stigende. Hvert af disse anlæg repræsenterer en investering af gennemsnitlig omkring en million kroner. Blot disse tal siger noget om datamaternes samfundsmæssige betydning. Ved denne forelæsning skal vi se lidt nærmere på hvordan disse mange anlæg er opbygget. Vi skal altså supplere den første forelæsnings historiske perspektiv med et billede af hvor vi står i dag. 

Nutidens datamater adskiller sig indbyrdes i nogen grad med hensyn til størrelse og hurtighed, mens der er betydelige ligheder i deres indre struktur. Denne strukturelle lighed er ikke tilfældig, den afspejler et hierarki som vi allerede kender fra den måde hvorpå data håndteres uden for datamaterne. Det er nemlig her vi bør begynde gennemgangen, ved datamaternes lagring af data. Denne side af datamaterne er ofte blevet betegnet som deres hukommelse, et ord der dog er unødigt psykologiserende. Jeg vil derfor holde mig til ordene lager og lagring. 
}{
Weltweit sind derzeit rund 50.000 Datenautomaten im Einsatz und ihre Zahl nimmt rasch zu.
Jede dieser Anlagen stellt eine Investition von durchschnittlich etwa einer Million Kronen dar $^{(3.1)}$.
Allein diese Zahlen sagen etwas über die gesellschaftliche Bedeutung der Datenautomaten.
In dieser Vorlesung werden wir uns etwas genauer ansehen, auf welche Weise diese vielen Anlagen aufgebaut sind.
Wir werden somit die historische Perspektive des ersten Vorlesungsteils um ein Bild davon zu ergänzen, wo wir heute stehen. 


Die heutigen Datenautomaten unterscheiden sich untereinander in gewissem Maße in Bezug auf Größe und Geschwindigkeit, während es bedeutende Ähnlichkeiten in ihrer inneren Struktur gibt. Diese strukturelle Ähnlichkeit ist nicht zufällig: sie spiegelt eine Hierarchie wider, die wir bereits von der Art und Weise kennen, wie Daten außerhalb der Datenautomaten gehandhabt werden.
Hier sollten wir mit der Darstellung beginnen: mit der Speicherung von Daten in den Datenautomaten. %Freiere Übersetzung 
Dieser Aspekt der Datenautomaten wurde oft als ihr Gedächtnis bezeichnet -- ein Wort, das jedoch unnötig psychologisierend ist. Ich werde deshalb bei den Wörtern \emph{Speicher} und \emph{Speicherung} bleiben.
}

\transSubSec{Datalagring i datamater}{Datenspeicherung in Datenautomaten}

\trans{
Det der lagres i en datamat er data, eller for at repetere definitionen fra den anden forelæsning: en repræsentation af fakta eller forestillinger på en formaliseret måde, der kan kommunikere eller manipulere ved en eller anden proces. Hvad det er for fakta eller forestillinger der repræsenteres i vore datamater vil vi tale mere om i senere forelæsninger. For øjeblikket er det tilstrækkeligt at tænke sig at det kan være tekster af enhver art, for eksempel navne og adresser, rapporter, eller talmaterialer. Hvad der interesserer os nu er repræsentationen af teksterne. Her er det praktisk først at slå fast at disse repræsentationer falder i tre grupper, for det første sådanne som er egnede til at sende data udefra ind i datamaten, for det andet dem som kan bruges ved overføring den omvendte vej, fra datamaten og ud til omverdenen, og for det tredie sådanne repræsentationer som er egnede for datamatens helt interne arbejde. 

For nu at begynde med de sidstnævnte, de interne repræsentationer, så må vi konstatere at selve den idé at udskille denne funktion som noget særskilt, der ikke teknisk behøver at løses på en måde der minder om dem der benyttes ved datamaternes ydre kommunikation, denne idé er af største betydning. Det er kun ved at erkende at man ved den indre datalagring ikke behøver at skele til muligheden af at de data som findes lagrede skal kunne aflæses af andre end datamaten selv, at man har kunnet opnå de store arbejdshastigheder. 

Det krav der må stilles til den interne datarepræsentation er at datamaten sikkert og hurtigt må kunne kommunikere de data der findes lagret. De lagrede data må altså kunne aflæses af datamaten, men tillige må der være steder at aflevere det der aflæses. Man indser snart at man enten må have et system der ubegrænset kan vedblive at rumme flere data, eller også må vi benytte repræsentationer der tillader at data slettes, som man sletter en tavle med en våd svamp. Det er selvsagt den anden af disse fremgangsmåder der er mest økonomisk og det er også den der må betragtes som grundlæggende i datamaterne. 

Som yderligere understregning af dette princip, at slette data, kan man drage en sammenligning med det der foregår i de fleste hjem hver dag. Hvis man får en daglig avis er dette en vis mængde data, som sædvanligvis lægges fremme på et bestemt sted, måske et avisbord. Den daglige ombytning af den gamle avis med en ny er nøje analog med sletningen af data på et bestemt sted i en datamat og lagringen af ny data på det samme sted. De processer datamaten udfører på de lagrede data svarer i dette billede til at avisen læses og at indholdet diskuteres og på anden måde bruges af familien. 

Til intern datalagring i datamater kan man dog ikke bruge så grove ting som papir og tryksværte, men man må for at opnå den ønskede letbevægelighed og derved hurtighed benytte svage ændringer i små faste genstande, for eksempel ændringer i magnetiseringen i små keramiske ringe, såkaldte ferritkerner. Man sørger også for at bruge forandringer der kun er forbigående, således at den samme ring kan ændres til at lagre nye data om og om igen så tit man ønsker det. Denne arbejdsmåde svarer til det der sker på et fjernsynsrørs skærm, hvor de enkelte punkter stadig modtager ny impulser som dele af stadig nye billeder. Der er dog den forskel at hver lagercelle 1 en datamat normalt indrettes til at bevare de sidst modtagne data uændret indtil datamatens arbejde direkte ændrer dem. Et datalager opbygget af ferritkerner tillader at enhver del af de lagrede data er tilgængelig for datamatens procesdel inden for nogle få milliontedele af et sekund. 

Moderne datamater udstyres normalt med et primært lager med en kapacitet af mellem 10.000 og nogle millioner tegn. Dette er ikke nogen overvældende størrelse sammenlignet med omfanget af de datamængder man er interesseret i at håndtere. Til sammenligning kan nævnes at en enkelt avisside kan rumme omkring 40.000 tegn. 

For at kunne beherske mere omfattende datamængder suppleres det primære lager med sekundære lagre eller baggrundslagre af langt større kapacitet, men med større tilgangstider, hvorved de store kapaciteter kan realiseres inden for økonomisk fornuftige rammer. Blandt de vigtigste lagringsmetoder der bruges på denne måde må nævnes indspilning på magnetbånd, efter det samme princip som kendes fra båndoptagere til hjemmebrug. En anden lagringsform er det såkaldte tromlelager, hvor man til datarepræsentationen igen benytter stoffers magnetisering, men hvor det magnetiserbare stof findes som et tyndt lag på overfladen af en roterende cylinder hvorved det stadig passerer forbi faststående ind- og afspillehoveder, der virker som i båndoptageren. 

Til at klargøre datamaternes lagerstruktur kan man igen drage en analogi til den sædvanlige tilværelse. Vi har allerede talt om avisbordet med dagens avis. Hvis vi vil se en analogi til de større datamængder der findes i en datamats baggrundslagre, kan man tænke på hjemmets bogsamling. Hvis denne er lille kan den godt være direkte for hånden, men det vil være mere besværligt at finde frem til en søgt oplysning jo større samlingen er. I et bogelskende hjem vil bogsamlingen ofte være spredt omkring i værelserne og det kan være nødvendigt at søge omkring efter en bestemt bog. De forskellige hylder og deres tilgængelighed er da analoge med de forskellige former for baggrundslagre og besværet med at finde en bog svarer til tilgangstiden for disse lagre. Det forstås også umiddelbart at man ved brugen af datamaten må lægge stor vægt på at placere de forskellige dele af de data der indgår i et problem således at de der bruges hyppigst til enhver tid er tilgængelige i de hurtigste lagre, ligesom man i sit hjem vil tage de bøger man for tiden er ved at bruge frem fra deres mere faste pladser på hylderne og for eksempel midlertidigt lade dem ligge på natbordet.
}{
Was in einem Datenautomaten gespeichert wird, sind \emph{Daten}, oder um die Definition aus der zweiten Vorlesung zu wiederholen: Eine Darstellung von Tatsachen oder Ideen auf eine formalisierte Weise, die durch irgendeinen Prozess kommuniziert oder manipuliert werden kann.

Was es für Tatsachen oder Ideen sind, die in unseren Datenautomaten dargestellt werden, werden wir in späteren Vorlesungen näher erörtern. Für den Moment reicht es, zu denken, dass es sich um Texte jeder Art handeln kann, wie zum Beispiel Namen und Adressen, Berichte oder Zahlenmaterial. Was uns jetzt interessiert, ist die Darstellung der Texte. Hier ist es zunächst praktisch festzustellen, dass diese Darstellungen in drei Gruppen fallen: erstens solche, die geeignet sind, Daten von außen in den Datenautomaten zu senden; zweitens solche, die für die Übertragung in die entgegengesetzte Richtung, vom Datenautomaten nach außen, verwendet werden können; und drittens solche Darstellungen, die für die gänzlich interne Arbeit des Datenautomaten geeignet sind.

Um nun mit den zuletzt genannten, den internen Darstellungen, zu beginnen, so müssen wir feststellen, dass allein die Idee, diese Funktion als etwas Eigenständiges abzusondern, von größter Bedeutung ist. Die interne Darstellung muss technisch nicht in einer Weise gelöst werden, die den bei der externen Kommunikation der Datenautomaten verwendeten Methoden ähnelt. Nur durch diese Erkenntnis, also dass man bei der internen Datenspeicherung nicht darauf achten muss, dass die gespeicherten Daten von anderen als dem Datenautomaten selbst gelesen werden können, konnte man diese hohen Arbeitsgeschwindigkeiten erreichen.

Die Anforderung, die an die interne Datendarstellung gestellt werden muss, ist, dass der Datenautomat die (in ihm) gespeicherten Daten sicher und schnell kommunizieren können muss. Die gespeicherten Daten müssen also vom Datenautomaten gelesen werden können, aber es muss auch Orte geben, um das Gelesene auszugeben. Man erkennt bald, dass man entweder ein System haben muss, das unbegrenzt fortfahren kann, mehr Daten zu speichern, oder wir müssen Darstellungen verwenden, die erlauben, dass Daten gelöscht werden, wie man eine Tafel mit einem nassen Schwamm löscht. Selbstverständlich ist die zweitgenannte dieser Vorgehensweisen die wirtschaftlichste, und sie ist auch die, die als grundlegend in den Datenautomaten betrachtet werden muss.

Zur weiteren Betonung dieses Prinzips -- des Löschens von Daten -- kann man einen Vergleich mit dem ziehen, was in den meisten Haushalten jeden Tag passiert. Wenn man eine Tageszeitung bekommt, ist dies eine bestimmte Menge an Daten, die normalerweise an einem bestimmten Ort, vielleicht auf einem Zeitungstisch, bereitgelegt wird. Der tägliche Austausch der alten Zeitung durch eine neue entspricht genau dem Löschen von Daten an einem bestimmten Ort in einem Datenautomaten und dem Speichern neuer Daten am selben Ort. Die Prozesse, die der Datenautomat auf den gespeicherten Daten ausführt, entsprechen in diesem Vergleich dem Lesen der Zeitung, dem Diskutieren des Inhalts und der anderweitigen Nutzung durch die Familie.

Für die interne Datenspeicherung in Datenautomaten kann man jedoch nicht so grobe Dinge wie Papier und Druckerschwärze verwenden, sondern man muss, um die gewünschte Beweglichkeit und damit Geschwindigkeit zu erreichen, schwache Veränderungen in kleinen festen Gegenständen nutzen, zum Beispiel Veränderungen in der Magnetisierung kleiner keramischer Ringe, den sogenannten \emph{Ferritkernen} $^{(3.2)}$. Man sollte auch Veränderungen verwenden, die nur vorübergehend sind, sodass derselbe Ring immer wieder verändert werden kann, um neue Daten so oft zu speichern, wie man möchte. Diese Arbeitsweise entspricht dem, was auf dem Bildschirm eines Fernsehgeräts passiert, wo die einzelnen Punkte ständig neue Impulse empfangen, als Teile immer neuer Bilder. Es gibt jedoch den Unterschied, dass jede Speicherzelle in einem Datenautomaten normalerweise so eingerichtet ist, dass sie die zuletzt empfangenen Daten unverändert aufbewahrt, bis die Arbeit des Datenautomaten sie direkt verändert. Ein aus Ferritkernen aufgebauter Datenspeicher ermöglicht es, dass jeder Teil der gespeicherten Daten für den Prozessor des Datenautomaten innerhalb von einigen Millionstel Sekunden zugänglich ist.

Moderne Datenautomaten sind normalerweise mit einem primären Speicher mit einer Kapazität von zwischen 10.000 und einigen Millionen Zeichen ausgestattet. Dies ist, verglichen mit dem Umfang der Datenmengen, die man zu bearbeiten interessiert ist, keine überwältigende Größe. Zum Vergleich kann erwähnt werden, dass eine einzelne Zeitungsseite etwa 40.000 Zeichen enthalten kann.

Um umfangreichere Datenmengen beherrschen zu können, wird der primäre Speicher durch sekundäre Speicher oder Hintergrundspeicher mit deutlich größerer, jedoch mit längeren Zugriffszeiten, ergänzt. Hierdurch können große Kapazitäten innerhalb wirtschaftlich vernünftiger Rahmenbedingungen realisiert werden. Unter den wichtigsten Speichermethoden, die auf diese Weise verwendet werden, muss die Aufzeichnung auf Magnetbändern erwähnt werden, die nach dem gleichen Prinzip wie bei Tonbandgeräten für den Heimgebrauch passiert. Eine andere Speicherform ist der sogenannte Trommelspeicher, bei dem zur Datendarstellung erneut die Magnetisierung von Materialien verwendet wird -- wobei das magnetisierbare Material als eine dünne Schicht auf der Oberfläche eines rotierenden Zylinders vorhanden ist, der ständig an feststehenden Les- und Schreibköpfen vorbeikommt, die wie in einem Tonbandgerät funktionieren.

Um die Speicherstruktur der Datenautomaten zu verdeutlichen, kann man erneut einen Vergleich mit dem gewöhnlichen Alltag ziehen. Wir haben bereits über den Zeitungstisch mit der Tageszeitung gesprochen. Wenn wir eine Analogie zu den größeren Datenmengen sehen wollen, die in den Hintergrundspeichern eines Datenautomaten vorhanden sind, kann man an die Büchersammlung zu Hause denken. Wenn diese klein ist, kann sie leicht griffbereit sein, aber es wird schwieriger sein, eine gesuchte Information zu finden, je größer die Sammlung ist. In einem buchliebenden Zuhause wird die Büchersammlung oft über mehrere Zimmer verteilt sein, und es kann notwendig sein, nach einem bestimmten Buch zu suchen. Die verschiedenen Regale und ihre Zugänglichkeit sind dann analog zu den verschiedenen Formen von Hintergrundspeichern, und die Mühe, ein Buch zu finden, entspricht der Zugriffszeit auf diese Speicher. Es versteht sich auch sofort, dass man bei der Nutzung des Datenautomaten großen Wert darauf legen muss, die verschiedenen Teile der Daten, die zu einem Problem gehören, so zu platzieren, dass die am häufigsten verwendeten jederzeit in den schnellsten Speichern verfügbar sind, so wie man zu Hause die Bücher, die man gerade verwendet, von ihren festen Plätzen in den Regalen nimmt und sie beispielsweise vorübergehend auf dem Nachttisch liegen lässt.
}

\transSubSec{Datamaternes ydre kommunikation}{Die äußere Kommunikation der Datenautomaten}

\trans{
De apparater der i dag benyttes ved kommunikation mellem datamater og mennesker er allerede kort omtalt i den første forelæsning og omfatter blandt andet skrivemaskiner, tegnemaskiner, fjernsynsskærme med tilhørende pegepinde, højttalere, mikrofoner, og skriftlæsere. En betydningsfuld del af den måde kommunikationen foregår er knyttet til datamatens betjering af forskellige apparater der samtidig er forbundet med den. Der ligger et problem i at undgå at det meste af datamatens tid kommer til at gå med at vente på disse forholdsvis langsomme apparater, eller på mennesker der betænker sig. I nutidens mere avancerede datamatiske systemer løses dette problem ved at datamaten er i stand til at dele sin proceskapacitet mellem mange forskellige opgaver. Ordningen ligner den man bruger på et kontor der både må tage sig af kunder og andet arbejde. Kontoristerne deler her deres tid mellem at betjene kunderne, når de er der, og at udføre andet arbejde i pauserne mellem kunderne. Systemet er betinget af at kontoristerne regelmæssig kaster et blik mod betjeningsdisken og konstaterer om der er kommet nye kunder til. Nutidens datamater kan på lignende måde veksle mellem at betjene kommunikation udadtil og at gennemføre mere omfattende interne processer. Med deres store hastighed kan de veksle mellem disse aktiviteter mange gange i sekundet og mennesker der kommunikerer med dem vil få den illusion at de betjenes uafbrudt. 

Med denne teknik bliver det muligt at benytte løse forbindelser mellem datamaten og det apparat der er i hænderne på brugeren. I særdeleshed kan man bruge sædvanlige telefonlinier og det bliver muligt at mange abonnenter har hver sin skrivemaskine og kan kalde en central datamat så tit de vil. Dette system har for længst vundet indpas til særlige formål, for eksempel pladsbestillingssystemer, men er også ved at trænge frem til almindelige formål. 

Ved kommunikation mellem datamater og andet apparatur benyttes papirstrimler, hulkort, eller magnetbånd som databærende medier, idet valget afgøres af procesbekvemmeligheden og hurtigheden. Magnetbånd tillader de største overføringshastigheder. Det er ikke usædvanligt at de pr. sekund kan overføre op mod 100.000 tegn, altså adskillige avissiders tekst. 

Endnu større overføringshastigheder er mulige ved en direkte transmission af data fra én datamat til en anden. Hvis denne teknik benyttes kan det dog knap nok betegnes som kommunikation ud ad datamaten, der er snarere tale om at de to datamater må betragtes som ét mere omfattende datamatisk system. kation ud ad datamaten, der er snarere tale om at de to datamater må betragtes som ét mere omfattende datamatisk system. 
}{
Die Geräte, die heute bei der Kommunikation zwischen Datenautomaten und Menschen verwendet werden, wurden bereits kurz in der ersten Vorlesungseinheit erwähnt und umfassen unter anderem Schreibmaschinen, Zeichenmaschinen, Fernsehbildschirme mit dazugehörigen Zeigestiften, Lautsprecher, Mikrofone und Schriftlesegeräte. Ein bedeutender Teil der Art und Weise, wie die Kommunikation abläuft, geht mit der Steuerung verschiedener Geräte durch den Datenautomaten einher, die gleichzeitig mit ihm verbunden sind. Ein (zu lösendes) Problem ist, zu vermeiden, dass der größte Teil der Zeit des Datenautomaten darauf verwendet wird, auf diese relativ (zum Datenautomaten) langsamen Geräte oder auf nachdenkende Menschen zu warten. In den heutigen fortschrittlicheren \alt{datenverarbeitenden}{informatischen} Systemen wird dieses Problem gelöst, indem der Datenautomat in der Lage ist, seine Prozesskapazität zwischen vielen verschiedenen Aufgaben zu teilen. Das System ähnelt dem, das man in einem Büro verwendet, das sowohl Kunden als auch andere Arbeiten betreuen muss. Die Büroangestellten teilen hier ihre Zeit zwischen dem Bedienen der Kunden, wenn diese da sind, und dem Ausführen anderer Arbeiten in den Pausen zwischen den Kunden. Das System beruht darauf, dass die Büroangestellten regelmäßig einen Blick auf den Schalter werfen und überprüfen, ob neue Kunden angekommen sind. Die heutigen Datenautomaten können auf ähnliche Weise zwischen dem Bedienen der externen Kommunikation und dem Durchführen umfangreicherer interner Prozesse wechseln. Mit ihrer großen Geschwindigkeit können sie viele Male pro Sekunde zwischen diesen Aktivitäten wechseln, sodass Menschen, die mit ihnen kommunizieren, die Illusion haben, dass sie ununterbrochen bedient werden würden.

Mit dieser Technik wird es möglich, lose (also nicht fest verbundene) Verbindungen zwischen dem Datenautomaten und dem Gerät, das sich in den Händen des Benutzers befindet, zu verwenden. Insbesondere kann man gewöhnliche Telefonleitungen verwenden, und es wird möglich, dass viele Abonnenten ihre eigene Schreibmaschine haben und einen zentralen Datenautomat so oft anrufen können, wie sie möchten. Dieses System hat längst für besondere Zwecke, wie zum Beispiel Platzreservierungssysteme, Einzug gehalten, setzt sich aber aktuell auch für allgemeine Zwecke durch.

Bei der Kommunikation zwischen Datenautomaten und anderen Geräten werden Papierstreifen, Lochkarten oder Magnetbänder als datentragende Medien verwendet, wobei die Wahl durch praktische Gesichtspunkte des Ablaufs und die Geschwindigkeit bestimmt wird. Magnetbänder ermöglichen die höchsten Übertragungsgeschwindigkeiten. Es ist nicht ungewöhnlich, dass sie pro Sekunde bis zu 100.000 Zeichen übertragen können, also den Text von mehreren Zeitungsseiten.

Noch höhere Übertragungsgeschwindigkeiten sind bei der direkten Übertragung von Daten von einem Datenautomaten zu einem anderen möglich. Wenn diese Technik verwendet wird, kann es jedoch kaum als Kommunikation aus dem Datenautomaten heraus bezeichnet werden, es handelt sich vielmehr darum, dass die beiden Datenautomaten als ein umfassenderes \alt{datenverarbeitendes}{informatisches} System betrachtet werden müssen.
}

\transSubSec{Dataprocesser i datamaterne}{Datenprozesse in den Datenautomaten}

\trans{
Datalagringen er kun den ene side af datamaterne, den anden, og nok mere spændende, side er procesdelen eller styreenheden. For at give en forståelse af det der foregår her må vi berøre tre forskellige forhold. Det første er selve procesbegrebet, det andet er hvad det er for processer der overhovedet kommer på tale i en datamat, og det tredie er spørgsmålet om hvad det er for processer der bringes til udførelse ved en konkret brug af en datamat. Af disse er det tredie spørgsmål så omfattende at det vil behøve hele den næste forelæsning, mens vi i dag skal tale om de to første. 

Altså, procesbegrebet. Heri ligger at noget sker igennem en vis periode i tiden. I kemien taler man om processer hvor der sker en omdannelse af stoffer fra én form til en anden. I datalogien beskæftiger vi os med omdannelser af data. Et velkendt eksempel er almindelig talregning, som børnene lærer den i skolen. For at lægge en kolonne tal sammen går vi skridtvis frem, begynder med etterne og danner via en række mellemresultater summen af dem, som vi nedskriver som sidste ciffer af resultatet og som mente. Derefter går vi videre med tierne på samme måde, osv. Disse forestillinger om de enkelte elementære skridt på vejen og om mellemresultater der kun har interesse en kort stund, er vigtige omstændigheder ved dataprocesbegrebet.

Det der foregår i en datamats styreenhed kan groft betragtes som netop en følge af elementære processer, idet vi ser bort fra at der i de fleste datamater også i et begrænset omfang tillades et samtidigt forløb af flere processer. Blandt de mulige elementære processer som en datamats styreenhed kan kalde til udførelse har vi allerede omtalt flytning af data. Der kan her skelnes mellem tre arter, svarende til kommunikation ind i datamaten, ud fra datamaten, eller fra et sted i det indre lager til et andet, idet man samtidig sletter hvad der stod i forvejen. 

Elementære dataprocesser der er mere indviklede end flytninger foregår i det væsentlige efter opskriften: tag de data der står lagret i et eller nogle få opgivne steder i det indre lager, lad disse dataværdier blive kombineret efter en bestemt opgivet forskrift således at der dannes nye data som resultat, og flyt derefter dette til et opgivet sted i lageret. Som eksempler på de forskrifter der kan komme på tale kan man nævne sammenligning for at konstatere hvorvidt de to dataværdier er ens, en proces der kun kan føre til et af to resultater, ja eller nej. Andre eksempler er regneprocesser som addition, subtraktion, multiplikation, og division, hvor de to dataværdier øjensynlig må repræsentere tal. 

De elementære dataprocesser der fra konstruktørens side bygges ind i nutidens datamater er alle ret simple. Division af to tal er faktisk noget nær det mest indviklede. Alle yderligere komplikationer i de processer man ønsker at få gennemført må realiseres ved at man lader datamaten udføre en følge af elementære processer. Hvis vi for eksempel ønsker at danne summen af tre tal går vi frem i to tempi, adderer altså først de to af dem og derefter resultatet heraf til det tredie, Normalt vil der til at løse mere indviklede dataprocesproblemer indgå et stort antal elementære processer, antal af tusinder eller millioner er ikke usædvanlige. 

Når sådanne opgaver alligevel er praktisk gennemførlige beror det på at de moderne datamater kan udføre de elementære processer så hurtigt. Datamater der pr. sekund kan udføre 10.000 elementære processer regnes i dag for langsomme, mens de mest ydedygtige når op på en million processer pr. sekund eller mere. 

Disse tal er ikke mindre forbavsende for dem der selv har været med til at udvikle apparaturet end for den udenforstående menigmand. Hver gang man som bruger af en datamat tænker på hvad hvad der foregår når den arbejder — ofte gennemfører den på få sekunder hvad man selv har været uger eller måneder om at udtænke — så må man forbløffes påny. Lad os derfor som afslutning på denne forelæsning overveje hvorpå denne hurtighed beror. Dette vil også kaste nyt lys over datalogiens grundbegreber. 
}{
Die Datenspeicherung ist nur die eine Seite der Datenautomaten. Die andere, und wahrscheinlich spannendere, Seite ist der Prozessbereich bzw. die Steuereinheit. Um ein Verständnis dessen zu geben, was hier vor sich geht, müssen wir drei verschiedene Aspekte ansprechen. Der erste ist das eigentliche Prozesskonzept, der zweite ist, welche Prozesse überhaupt in einem Datenautomaten in Betracht kommen, und der dritte ist die Frage, welche Prozesse bei der konkreten Nutzung eines Datenautomaten ausgeführt werden. Von diesen ist die dritte Frage so umfassend, dass sie die gesamte nächste Vorlesung erfordert, während wir heute über die ersten beiden sprechen werden.

Also, das Prozesskonzept. Hierin liegt, dass etwas über einen bestimmten Zeitraum hinweg geschieht. In der Chemie spricht man von Prozessen, bei denen eine Umwandlung von Stoffen von einer Form in eine andere geschieht. In der \alt{Datalogie}{Informatik} beschäftigen wir uns mit der Umwandlung von Daten. Ein bekanntes Beispiel ist die gewöhnliche Zahlenrechnung, wie sie die Kinder in der Schule lernen. Um eine Spalte von Zahlen zusammenzuzählen, gehen wir schrittweise vor, beginnen mit den Einern und bilden über eine Reihe von Zwischenergebnissen die Summe, die wir als letzte Ziffer des Ergebnisses und als Übertrag notieren. Danach machen wir mit den Zehnern auf die gleiche Weise weiter, usw. Diese Vorstellungen von den einzelnen elementaren Schritten auf dem Weg und von Zwischenergebnissen, die nur für kurze Zeit von Interesse sind, sind wichtige Aspekte des Datenprozesskonzepts.

Das, was in der Steuereinheit eines Datenautomaten vor sich geht, kann grob als eine Abfolge elementarer Prozesse betrachtet werden, wobei wir außer Acht lassen, dass in den meisten Datenautomaten auch in begrenztem Umfang das gleichzeitige Ablaufen mehrerer Prozesse erlaubt ist. Unter den möglichen elementaren Prozessen, die die Steuereinheit eines Datenautomaten zur Ausführung aufrufen kann, haben wir bereits die Datenverschiebung erwähnt. Hier kann zwischen drei Arten unterschieden werden, entsprechend der Kommunikation in den Datenautomaten hinein, aus dem Datenautomaten heraus oder von einem Ort im internen Speicher zu einem anderen, wobei gleichzeitig das gelöscht wird, was zuvor dort stand.

Elementare Datenprozesse, die komplizierter sind als Verschiebungen, laufen im Wesentlichen nach dem Schema ab: Nimm die Daten, die an einem oder einigen wenigen angegebenen Stellen im internen Speicher gespeichert sind, lass diese Datenwerte nach einer bestimmten vorgegebenen Vorschrift kombiniert werden, sodass als Ergebnis neue Daten entstehen, und verschiebe diese dann zu einer angegebenen Stelle im Speicher. Als Beispiele für die Vorschriften, die in Betracht kommen können, kann man den Vergleich nennen, um festzustellen, ob die beiden Datenwerte gleich sind – ein Prozess, der nur zu einem von zwei Ergebnissen führen kann: ja oder nein. Andere Beispiele sind Rechenprozesse wie Addition, Subtraktion, Multiplikation und Division, wobei die beiden Datenwerte offensichtlich Zahlen repräsentieren müssen.

Die elementaren Datenprozesse, die seitens des Konstrukteurs in heutige Datenautomaten eingebaut werden, sind alle recht simpel. Die Division von zwei Zahlen ist tatsächlich so ziemlich das Komplizierteste. Alle weiteren Funktionen in den Prozessen, die man durchführen möchte, müssen dadurch realisiert werden, dass man den Datenautomaten eine Abfolge elementarer Prozesse ausführen lässt. Wenn wir zum Beispiel die Summe von drei Zahlen bilden möchten, gehen wir in zwei Schritten vor. Wir addieren zuerst zwei von ihnen und dann das Ergebnis hiervon zur dritten Zahl. Normalerweise wird für die Lösung komplizierterer Datenprozessprobleme eine große Anzahl elementarer Prozesse erforderlich sein, eine Anzahl von Tausenden oder Millionen ist nicht ungewöhnlich.

Dass solche Aufgaben dennoch praktisch durchführbar sind, beruht darauf, dass moderne Datenautomaten die elementaren Prozesse sehr schnell ausführen können. Datenautomaten, die pro Sekunde 10.000 elementare Prozesse ausführen können, gelten heute als langsam, während die leistungsfähigsten auf eine Million Prozesse pro Sekunde oder noch mehr kommen.

Diese Zahlen sind nicht weniger erstaunlich für diejenigen, die selbst bei der Entwicklung der Geräte mitgewirkt haben, als für den außenstehenden Durchschnittsmenschen. Jedes Mal, wenn man als Benutzer eines Datenautomaten darüber nachdenkt, was geschieht, wenn er arbeitet -- oft führt er in wenigen Sekunden das durch, wofür man selbst Wochen oder Monate gebraucht hat, um es zu entwickeln –- dann muss man aufs Neue erstaunt sein. Lassen Sie uns daher zum Abschluss dieser Vorlesung überlegen, worauf diese Geschwindigkeit beruht. Dies wird auch neues Licht auf die Grundbegriffe der Datalogie werfen.
}

\transSubSec{Datamaternes hurtighed}{Die Geschwindigkeit der Datenautomaten}

\trans{Vi må huske at data er sædvanlige begivenheder i verden og at bearbejdning af data altid må gennemføres ved tilsvarende ændringer af virkelige, og ikke blot tænkte, ting i verden.

Vi har imidlertid en ubegrænset frihed til at vælge hvorledes vore data repræsenteres og hvad det er for forandringer der svarer til processerne. Dette er i direkte modsætning til bearbejdning af genstande der bruges som de er. En bil, for eksempel, bruges til at køre i sådan som den er. For den der fremstiller bilen er der ingen vej udenom at forme og flytte rundt med selve de jernstykker der indgår i den. Ved dataprocesser har vi derimod en høj grad af frihed, selv når den form hvori de endelige resultater ønskes er fastlagt på forhånd. Til mellemresultaterne kan vi ofte helt glemme den endelige form og vælge en datarepræsentation der er bekvem for processen. Ved at udnytte denne frihed fuldt ud opnår vi den enorme hurtighed i dataprocesserne. 

Ved at forfølge denne tankegang kan man uden videre forstå den tekniske udviklingslinie der er fulgt i de seneste årtier. Overgangen fra at bruge mekaniske dele, som tandhjul, til at bruge elektronrør betød at man gik over fra at dataprocessen krævede en flytning af dele der var store nok til at bearbejdes mekanisk til at den blot krævede en flytning af de umådelig meget lettere elektroner. Den senere udvikling har betydet en stadig reduktion i størrelsen af de elektriske komponenter, først fra elektronrør på omkring 5 centimeter til transistorer på nogle millimetre, og i de seneste år til mikroelektroniske enheder, hvor hver enhed er en brøkdel af en millimeter. Hver sådan reduktion i størrelsen betyder at den mængde elektroner der skal flyttes idet en given dataproces udføres bliver mindre. Det betyder igen at den med samme kraftpåvirkning vil forløbe hurtigere, eller alternativt at man med mindre energiomsætning kan opnå samme hurtighed. 

En af grænserne for hvor hurtige dataprocesser man vil kunne realisere afgøres af hvor små elektroniske komponenter det er muligt at fremstille og forbinde sammen. Antagelig vil udviklingen endnu i en overskuelig fremtid kunne fortsætte med en stadig mere forfinet teknik til fremstilling af mikroskopiske elektroniske kredsløb. Der nås dog en absolut grænse når man nærmer sig molekylerne i størrelse, da disse som bekendt ikke kan deles uden at miste deres ydre egenskaber. Selv hvis vi ser bort fra teknologiske problemer er der dog også en anden grænse som vil gøre sig gældende, nemlig de elektriske signalers udbredelseshastighed. Mens en datamat arbejder udveksler dens forskellige dele indbyrdes et stort antal signaler. Disse signaler kan dog ikke løbe hurtigere end lyshastigheden, som er 300.000 km i sekundet i tomrum og noget mindre i luft. En enkelt procestid kan ikke gøres kortere end den tid et signal behøver for at forplante sig fra den ene ende af datamaten til den anden. Nu er tiden for at signalet forplanter sig en meter mere end tre milliartedele af et sekund. En datamat af denne størrelse vil derfor aldrig kunne bringes til at udføre mere end 300 millioner processer i sekundet. Til at illustrere de teknologiske gennembrud i årene 1940 til 1965 kan man på denne baggrund næppe finde et bedre vidnesbyrd end det faktum at procesantallet pr. sekund i denne periode blev øget fra omkring én til over en million.
}{
Wir müssen uns daran erinnern, dass Daten gewöhnliche Begebenheiten in der Welt sind und dass die Verarbeitung von Daten immer durch entsprechende Veränderungen an realen und nicht nur gedachten Dingen in der Welt durchgeführt werden muss.

Wir haben jedoch eine unbegrenzte Freiheit zu wählen, wie unsere Daten dargestellt werden und welche Veränderungen den Prozessen entsprechen. Dies steht im direkten Gegensatz zur Bearbeitung von Gegenständen, die so verwendet werden, wie sie sind. Ein Auto wird beispielsweise so verwendet, wie es ist, um zu fahren. Für denjenigen, der das Auto herstellt, gibt es keinen Weg darum herum, die Eisenstücke zu formen und zu bewegen, die in das Auto eingehen. Bei Datenprozessen haben wir hingegen einen hohen Grad an Freiheit, selbst wenn die Form, in der die Endergebnisse gewünscht werden, im Voraus festgelegt ist. Für die Zwischenergebnisse können wir oft die endgültige Form völlig vernachlässigen und eine Datenrepräsentation wählen, die für den Prozess besonders gut geeignet ist. Indem wir diese Freiheit vollständig nutzen, erreichen wir die enorme Geschwindigkeit der Datenprozesse.

Wenn man diesem Gedankengang folgt, kann man leicht die technische Entwicklungslinie verstehen, die in den letzten Jahrzehnten verfolgt wurde. Der Übergang von der Verwendung mechanischer Teile, wie Zahnräder, zur Verwendung von Elektronenröhren bedeutete, dass man von der Verarbeitung durch Bewegung von Teilen, die groß genug waren, um mechanisch bearbeitet zu werden, zur Verarbeitung durch Bewegung der unermesslich leichter (zu bearbeitenden) Elektronen überging. Die spätere Entwicklung führte zu einer stetigen Verkleinerung der elektrischen Komponenten, zunächst von Elektronenröhren von etwa 5 Zentimetern zu Transistoren von einigen Millimetern und in den letzten Jahren zu mikroelektronischen Einheiten, bei denen jede Einheit nur einen Bruchteil eines Millimeters groß ist. Jede derartige Größenreduzierung bedeutet, dass die Menge an Elektronen, die während eines gegebenen Datenprozesses bewegt werden muss, kleiner wird. Das bedeutet wiederum, dass der Prozess bei gleichem Krafteinsatz schneller ablaufen wird, oder alternativ, dass man mit geringerem Energieverbrauch die gleiche Geschwindigkeit erreichen kann.

Eine der Grenzen, wie schnelle Datenprozesse man realisieren kann, wird davon bestimmt, wie klein elektronische Komponenten hergestellt und miteinander verbunden werden können. Vermutlich wird sich die Entwicklung noch in absehbarer Zukunft mit einer immer besseren Technik zur Herstellung mikroskopischer elektronischer Schaltkreise fortsetzen. Es wird jedoch eine absolute Grenze erreicht, wenn man sich der Größe von Molekülen nähert, da diese bekanntlich nicht geteilt werden können, ohne ihre äußeren Eigenschaften zu verlieren. Selbst wenn wir technologische Probleme außer Acht lassen, gibt es jedoch auch eine andere Grenze, die wirksam wird: nämlich die Ausbreitungsgeschwindigkeit elektrischer Signale. Während ein Datenautomat arbeitet, tauschen seine verschiedenen Teile untereinander eine große Anzahl von Signalen aus. Diese Signale können jedoch nicht schneller laufen als die Lichtgeschwindigkeit, die im Vakuum 300.000 km pro Sekunde beträgt und in Luft etwas weniger. Eine einzelne Prozesszeit kann nicht kürzer gemacht werden als die Zeit, die ein Signal benötigt, um sich von einem Ende des Datenautomaten zum anderen fortzupflanzen. Die Zeit, die ein Signal benötigt, um sich einen Meter fortzupflanzen, beträgt etwas mehr als drei milliardstel Sekunden. Ein Datenautomat dieser Größe wird daher nie mehr als 300 Millionen Prozesse pro Sekunde ausführen können. Um die technologischen Durchbrüche in den Jahren 1940 bis 1965 zu veranschaulichen, kann man vor diesem Hintergrund kaum ein besseres Zeugnis finden als die Tatsache, dass die Anzahl der Prozesse pro Sekunde in diesem Zeitraum von etwa einem auf über eine Million gesteigert wurde.
}


