Ziel
Du weißt, wie der TI-59 Programm und Daten im selben Speicher unterbringt und wie eine Zahl darin aussieht.
Der Speicher
Der Datenspeicher des TI-59 besteht aus 120 Registern zu je 16 Ziffern (Nibbles, je 4 Bit), also 8 Bytes – zusammen 960 Bytes. Gemessen am emulierten Rechner, Register für Register:
| Inhalt | wo er liegt |
|---|---|
| Programmschritt n | Register n ÷ 8, Byte n mod 8 – Schritt 000 im untersten Byte von Register 0 |
Speicher n (STO n) | Register 119 − n – Speicher 00 ist das oberste Register |
Programme wachsen also von unten, Speicher von oben. Dazwischen liegt die Grenze, die Op 17 verschiebt: In der Grundeinstellung gehören die Register 0 bis 59 dem Programm (480 Schritte) und 60 bis 119 den Speichern 59 bis 00. Ein Zehnerpaket Speicher sind zehn Register, also 80 Programmschritte – genau der Abstand zwischen 479.59 und 719.29 in Lektion 4.3.
Auch die vier Kartenbänke sind nichts anderes als Viertel dieses Speichers: je 30 Register oder 240 Bytes. Bank 1 enthält die Programmschritte 000–239. In der Grundeinstellung kennzeichnet der TI-59 beim Schreiben Bank 1 und 2 als Programm und Bank 3 und 4 als Daten – so steht es im Kopf der Karte.
Ein Programmschritt liegt als BCD-Byte im Register: Nach x² + 1 stehen im untersten Register die Ziffern …018533 – von rechts gelesen 33, 85, 01.
Zahlen
Eine Zahl belegt ein ganzes Register: 13 Ziffern Mantisse, 2 Ziffern Exponent und eine Ziffer für die Vorzeichen. Von der höchsten Ziffer (links) zur niedrigsten:
d d d d d d d d d d d d d e e s
└──────── Mantisse ──────┘ └Exp┘ └ Vorzeichen: +2 = Mantisse negativ, +4 = Exponent negativ
Gemessen, nach STO in einen Speicher:
| Zahl | Register |
|---|---|
| 3,14159 | 3141590000000000 |
| −2,5 | 2500000000000002 |
| 1234 | 1234000000000030 |
| 0,001 | 1000000000000034 |
| 1 EE 45 | 1000000000000450 |
| 1 EE −45 | 1000000000000454 |
Die Mantisse ist normiert (eine Ziffer vor dem Komma), der Exponent steht als zwei BCD-Ziffern daneben. Die Anzeige zeigt nur 10 der 13 Mantissenziffern – der Rechner rechnet intern genauer, als er anzeigt. Deshalb bleibt bei Fix das volle Ergebnis erhalten (Lektion 2.2).
Üben
- Lies aus
5000000000000020die Zahl ab. - Wie sieht −0,02 im Register aus?
Probe
Wie viele Zahlen und wie viele Programmschritte passen auf eine Kartenbank? Begründe mit der Registergröße.
Rückblick
120 Register × 8 Bytes, Programm von unten, Speicher von oben, Grenze per Op 17, Zahlen als 13-stellige BCD-Mantisse mit Exponent und Vorzeichenziffer.
Lösungen: Üben 1: 5 × 10² = 500. Üben 2: 2000000000000026 (Mantisse 2, Exponent 02, beide Vorzeichen: 2 + 4). Probe: 30 Register – also 30 Zahlen oder 240 Programmschritte.
Weiter mit Lektion 6.3: Takt, Tastatur und Drucker · zurück zu Lektion 6.1 · Kursübersicht

