Das lernst du heute
- Was genau zählt
- Präprozessor und Langform
- Zeichen messen
Die Grenzen kennst du seit Tag 5: 128 Zeilen, 90 Zeichen pro Zeile, 4096 Zeichen insgesamt. Bei kleinen Chips spielen sie keine Rolle. Bei den großen Anlagen der letzten Wochen stößt du an sie – und dann zählt jedes Detail, was genau mitgerechnet wird.
Was genau zählt
| Grenze | zählt mit |
|---|---|
| 128 Zeilen | jede Zeile: Code, Kommentar, Leerzeile, Label, define, alias |
| 90 Zeichen pro Zeile | alles in der Zeile, auch der Kommentar dahinter |
| 4096 Zeichen | der gesamte Text, auch Leerzeichen, Kommentare und Zeilenumbrüche |
Eine Zeile, die mit dem Kommentar 95 Zeichen hat, ist zu lang – auch wenn der Code allein nur 60 hat. Der Chip lässt sich dann nicht laden.
Präprozessor und Langform
HASH("…"), STR("…"), %1010 und $FF ersetzt der Präprozessor beim Laden durch Zahlen. Gezählt wird aber vorher, in der Langform, so wie du sie geschrieben hast:
| geschrieben | Zeichen | nach dem Präprozessor |
|---|---|---|
HASH("StructureHydroponicsTrayData") | 37 | -1841632400 |
HASH("Beet") | 12 | eine Zahl |
%1111_1111 | 10 | 255 |
Ein define lohnt sich deshalb schon ab der zweiten Verwendung: Die Zeile define SCHALE HASH("StructureHydroponicsTrayData") kostet einmal etwa 52 Zeichen, jede Verwendung danach spart 31.
lbns reif HASH("StructureHydroponicsTrayData") HASH("Beet") 0 Mature Average
define SCHALE HASH("StructureHydroponicsTrayData") # Hydrokultur-Gerät
lbns reif SCHALE HASH("Beet") 0 Mature Average
Zeichen messen
Der IC10-Coder auf dieser Seite zeigt Zeilen und Zeichen beim Schreiben an und markiert jede Zeile über 90 Zeichen. Im Spiel siehst du es erst, wenn der Chip den Code ablehnt. Schätzen kannst du so:
- Eine typische Befehlszeile hat 25 bis 45 Zeichen.
- 128 Zeilen zu je 32 Zeichen sind schon 4096 – mit deutschen Kommentaren erreichst du das Zeichenlimit fast immer vor dem Zeilenlimit.
Jede Zeile zählt mit einem Zeilenumbruch. 100 Leerzeilen sind 100 Zeichen und 100 von 128 Zeilen – Abstände zwischen Abschnitten sind nicht kostenlos.
Kommentare lieber über die Zeile schreiben als dahinter. Dann bleibt die Befehlszeile kurz, und eine lange Erklärung sprengt nicht die 90 Zeichen.
Schaubild
Übung
Aufgabe
Der Startcode funktioniert, lässt sich aber nicht laden: Drei Zeilen sind länger als 90 Zeichen. Bring jede Zeile unter 90 Zeichen, indem du die Prefab-Hashes in defines verschiebst und lange Kommentare über die Zeile setzt. Das Verhalten bleibt gleich.
Hinweise
Hinweis 1
define SCHALE HASH("StructureHydroponicsTrayData") und define ANZ HASH("StructureConsoleLED5") anlegen.
Hinweis 2
Im Rumpf SCHALE und ANZ statt der langen HASH-Aufrufe benutzen.
Hinweis 3
Kommentare hinter den Befehlen eine Zeile nach oben setzen.
Quiz
4 Fragen. Ab 60 % ist das Quiz bestanden – die Auswertung macht der Server.
Tag abschließen
- Übung im Simulator bestanden
- Quiz mit mindestens 60 % bestanden
Ohne Konto wird der Fortschritt nur in diesem Browser gespeichert.
Fehler in dieser Lektion melden
Zum Melden bitte anmelden. Anmelden