|
||
Der Know - how Computer
Ein Computer, der mit Streichh�lzern arbeitet.Von Wolfgang BackWir schreiben das Jahr 1983. Die Computersituation in der Bundesrepublik war noch sehr bescheiden. Es gab ein paar (tausend) Leute, die sich zur Avantgarde z�hlten und 4000 Mark und mehr ausgaben, um sich einen Apple anzuschaffen. Nat�rlich gab es bereits andere Modelle auf dem Markt. Fast jeden Monat kam ein neues exotisches Modell hinzu. Der Computerclub hatte damals das gro�e Problem, dass die Sendung auf Zuschauerinteresse stie�, obwohl ein Gro�teil der Seher gar keinen Computer zur Verf�gung hatte. Aus diesem Grunde entwickelten Ulrich Rohde und ich einen Papiercomputer, der schon bald �von der St�ckzahl her- die Nummer Eins in der Bundesrepublik war. Mehr als 300 Tausend Exemplare wurden unter die interessierte Zuschauerschaft verteilt. Die Idee, das Funktionieren eines Computers in einfachster Form darzustellen, fand bald in der schulischen Ausbild ihren Einzug. Selbst heute noch soll er an manchen Berufsschulen im Einsatz sein - so wurde es mir best�tigt. Somit war mit dem Papiercomputer ein Lehrmittel geschaffen, das jeden in die Lage versetzte, die Denkstrukturen beim Programmieren zu erlernen. Nat�rlich ist es kein Computerersatz, doch mit den 5 vorhandenen Befehlen lassen sich s�mtliche mathematischen Probleme l�sen. Es ist ja auch verst�ndlich. Wenn man sich klarmacht, dass die Multiplikation auf der Addition aufbaut, denn 3 * 6 ist nichts anderes als 6 + 6 + 6.
Die n�chste mathematische Stufe: das Potenzieren ist entsprechend: Wenn Sie sp�ter in die Assemblersprache einsteigen wollen, so ist der Knowhow � Computer das richtige Lernmittel, um Denkstrukturen in Maschinensprache zu trainieren.
Ein Computer besteht aus einem Rechenwerk, normalerweise die CPU (die mu� allerdings mit der Hand bewegt werden), einem Datenspeicher und aus dem Programm, das Befehle und Anweisungen enth�lt. Letztendlich mu� noch eine Eingabe- und Ausgabem�glichkeit geschaffen werden. All dies ist mit diesem einfachen Modell m�glich. Die Daten werden in der Papierversion mit Streichh�lzern dargestellt. In der Computerversion wurde dies mit virtuellen H�lzern beibehalten.
Der rechte Teil (Datenregister) dient daher zur Ein- und Ausgabe.
Die Bedienung der Computerversion ist einfach. Am effektivsten - bei hoher Anzahl von H�lzern - ist die direkte Eingabe im kleinen Textfenster �ber dem -+ Knopf. Die linke Seite des Knowhow � Computers ist f�r das Programm vorgesehen. Hier kommen die erw�hnten 5 Befehle zum Zuge. Die Befehle sind sicherlich leicht zu merken. 1.) stp � dieses ist der Stoppbefehl. Wird die Zelle mit diesem Befehl erreicht, so ist die gestellte Aufgabe abgearbeitet, das Programm ist zu Ende. 2.) inc � dieser Befehl wurde aus dem englischen Wort increment abgeleitet. Es bedeutet, dass der Wert in dem angesprochenen Datenregister um 1 erh�ht wird � ein Holz wird dazugelegt. Dieser Befehl ist auch im Assembler sehr wichtig, wie Sie sp�ter noch sehen werden. 3.) dec � das Pendant zu inc. Decrement bedeutet, dass der Registerwert um 1 erniedrigt wird. Auch diesen Befehl werden Sie sp�ter wieder entdecken. 4.) jmp � ist ein Sprungbefehl, abgeleitet von jump. Der Inhalt der in der Zelle zeigt an, wohin im Programm jetzt gesprungen werden soll. Ein jmp 99 1 bedeutet also: Wir sind in der Programmzelle 1. Beim n�chsten Takt soll in die letzte Zelle 99 gesprungen werden. Finden wir hier jmp 1 99 vor, so haben wir eine Endlosschleife programmiert: von 1 nach 99, von 99 nach 1 usw. Sprungbefehle sind sp�ter wichtige Befehle im Assembler. Von Basic her kennt man diese Befehle ebenso: hier heisst es goto.
5.) isz � dieser Befehl ist vielleicht etwas schwieriger zu verstehen.
Es ist ein Verzweigungsbefehl.
Er leitet sich hier von der Fragestellung is zero ?, also ist es null ? ab. Vergleichbar in Basic ist der IF � Befehl, vergleichbar im Assembler bne = branch not equal oder beq = branch if equal.
10 IF A=0 then goto 30 Dieses Basicprogr�mmchen wird also immer HALLO schreiben, wenn A ungleich 0 ist. Ist A = 0, so wird das Programm beendet. Das w�r�s auch schon. Anhand der vorgelegten einfachen Addition in dem Bild erkl�re ich den Ablauf einmal genauer. Sie sollten dann versuchen, andere Rechenarten selbst zu programmieren. Die Grundrechenarten Addition, Subtraktion, Multiplikation und Division sind nat�rlich schon als vorgefertigte Programme vorhanden. Sie sind etwas ausgefeilter und k�nnen als �ordentliches� Programmieren angesehen werden. Doch zun�chst einmal ein einfaches Beispiel, eine Addition ohne Schn�rkel:
In diesem Beispiel sind 2 H�lzer in Datenregister 1 und 2 H�lzer in Datenregister 2. Das Programm auf der linken Seite (Addition) wird 2 + 2 = 4 errechnen.
Wir beginnen mit unserem Programmz�hler (der Kugelschreiber) in der Zelle 1, wie es jeder Computer macht.
Ein Sprung zur Programmzelle 4 ist hier die Anweisung.
Im n�chsten Befehl wird ein Holz in das Datenregister 1 hinzugef�gt: inc 1 5 . Nach der Befehlsdefinition wird dann die folgende Programmzelle �bersprungen und wir landen auf dem Stoppbefehl stp � das Programm ist beendet.
Jetzt sollten Sie versuchen, einige Programme selbst zu schreiben.
Man kann das alles auf Papier realisieren, indem die Vorlage so kopiert wird, wie oben gezeigt. Echte Streichh�lzer qwerden in die Register gelegt und ein Kugelschreiber dient als Programmz�hler.Auf gehts!!
Es ist sicherlich kein dummes Geschw�tz, wenn ich behaupte, dass das Vertrautwerden mit dieser Programmiertechnik das Verst�ndnis f�r die Funktion eines Computers f�rdert. Hier ist eine Art Maschinensprache realisiert, deren Verst�ndnis f�r sp�tere Programmieranwendungen in anderen Hochsprachen sicherlich von Vorteil ist.Es wird auf meinen Seiten ein Internet - Knowhow-Computer entstehen. Daf�r muss ich mich noch ein wenig mit javaskript auseinandersetzen. Dann kann man es direkt auf der entsprechenden Seite ausprobieren.
Bis dahin kann man sich ein Programm laden, das als EXE-File auf dem Computer l�uft. Die Runtimebibliothek
vbrun300.dll und das Contril GRID.VBX ist im ZIP-File vorhanden.
Das Programm habe ich schnell in Visual Basic geschrieben.
Ich habe hier eine RENUMBER � Funktion eingebaut (eigentlich Quatsch).
Der kleine Taschenrechner im Programm soll eigentlich alles auf den Kopf stellen:
In den kleinen Farbfenstern kann man die pers�nliche Note einstellen.
Knowhow Computer Zip-File(269 KB) laden
|
||
© 2003 by Wolfgang Back [email protected] |