29.10.2013 Aufrufe

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

CP1 Anleitung (Manual) - 8Bit-Homecomputermuseum

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

en, könnte u.U. genau an zwei Speicherzellen<br />

scheitern. In diesem Sinne noch ein weiterer Trick.<br />

Wenn bei einer Programmverzweigung in beiden<br />

Programmzweigen als nächstes der gleiche Befehl<br />

gebraucht wird, so legen Sie diesen Befehl zwi­<br />

schen den Vergleich und den Bedingten Sprung.<br />

Wir haben dies schon einmal gemacht, ohne daß<br />

Sie es vielleicht bewußt registriert haben. Schauen<br />

Sie sich das Flußdiagramm Kapitel 1.69 an. In die<br />

Raute der Programmverzweigung ist außer dem<br />

Vergleichsbefehl auch noch ein Lade-(LDA)-Befehl<br />

eingetragen. Sowohl vor dem Addieren als vor dem<br />

Anzeigen wird dort nämlich der Inhalt der „Ergeb­<br />

niszelle" im Akku benötigt.<br />

1.73 Die Rucksack-Methode<br />

Anfängern passiert es recht häufig, daß sie beim<br />

Entwickeln eines Programms einen Befehl verges­<br />

sen, der später, wenn das Programm bereits einge­<br />

tippt ist und ausgetestet wird, noch eingefügt wer­<br />

den müßte.<br />

Zwei Methoden bieten sich für einen solchen Fall an.<br />

Man kann einen (oder mehrere) Befehle „hinten<br />

anhängen", d.h. an das Programmende anfügen.<br />

Ein solches Anhängsel nennt man einen Ruck­<br />

sack.<br />

Beispiel: Beim Würfelprogramm von Kapitel 1.15<br />

haben Sie den Additionsbefehl vergessen. Auf<br />

Adresse 004 steht also statt des Additionsbefehls<br />

bereits der Vergleichsbefehl. Machen Sie nun fol­<br />

gendes: Überschreiben Sie den Vergleichsbefehl<br />

durch einen Sprung nach 007 und bringen Sie den<br />

fehlenden Additionsbefehl nun in Zelle 007, den<br />

Vergleichsbefehl in Zelle 008 und in Zelle 009<br />

schließlich einen RückSprungbefehl nach Adresse<br />

005 des Hauptprogramms.<br />

Listing 25: Rucksackprogramm<br />

Adresse Mnemonics Code Kommentar<br />

1.74 NOP- tue nichts<br />

Bei der zweiten Methode plant man von vornherein<br />

ein, daß es Probleme geben könnte und fügt in ge­<br />

wissen Abständen im Programm Befehle ein, die<br />

buchstäblich „nichts" bewirken. Ein solcher Befehl<br />

ist z. B.<br />

001 AKO 001 04.001 Lade „1" in den Akku<br />

VZG 000 („Warte nicht")<br />

Er stört den Programmablauf überhaupt nicht,<br />

kann jedoch gegebenenfalls durch einen anderen<br />

Befehl ersetzt werden, der vergessen wurde. Ein<br />

Befehl ohne Wirkung heißt in der Computer-Fach­<br />

sprache NOP-Befehl (NOP= No Operation).<br />

1.75 Mehrere Programme im Speicher<br />

Eine (an sich selbstverständliche) Möglichkeit, die<br />

der Computer bietet, soll nicht unerwähnt bleiben.<br />

Man kann im Speicher ein langes, jedoch auch<br />

mehrere kurze Programme gleichzeitig unterbrin­<br />

gen. Sie können z.B. Programm I von Adresse 001<br />

bis 027, Programm II von 028 bis 074 und Pro­<br />

gramm III von 075 bis 099 in den Speicher einge­<br />

ben. Möchten Sie, daß der Computer Programm II<br />

abarbeitet, so stellen Sie den Programmzähler auf<br />

028 (028-PC) und starten es durch Drücken der<br />

RUN-Taste.<br />

002 ABS 101 06.101 Speichere den Akku-Inhalt in 101<br />

003 ABS 000 06.000 Speichere den Akku-Inhalt in 000<br />

004 SPU 007 09.007 Springe zum „Rucksack"<br />

1.76 Programm-Schieber<br />

005 SPB 001 11.001 Wenn ja, beginne wieder von vom<br />

006 SPU 003 09.003 Wenn nein, mache bei 003 weiter<br />

007 ADD 101 07.101 Addiere eine „1"<br />

Besonders trickreich können Sie vorgehen, wenn<br />

z.B. gerade am Programmanfang ein oder mehrere<br />

Befehle vergessen wurden. Ein solcher Fehler ist<br />

besonders ärgerlich, weil man eigentlich das ge­<br />

samte Programm neu eingeben müßte. Hier hilft<br />

008 VGL 100 10.100 Ist Akku-Inhalt schon „7"? • Rucksack<br />

009 SPU 005 09.005 Springe zurück nach 005<br />

63

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!