, die speziell für das Spiel erdacht wurde. Das Redcode-Instruction Set ist für bestimmte Aufgaben optimiert und die Speicherorganisation eines MARS ist ebenfalls anders aufgebaut, als es bei echten Computern der Fall ist. Ein wesentlicher Unterschied zu herkömmlichen Rechnern ist, daß Redcodeprogramme nur auf Daten zugreifen können, die sich im Hauptspeicher befinden. Es gibt also keine Arbeitsregister, die dem Programmierer zur Verfügung stehen würden und Redcode-Programme können auch keine Peripheriegeräte
ansteuern, weil schlichtweg keine vorhanden sind. Die Aufgabe der Register wird in Redcode von den DAT-Befehlen übernommen - Befehle wie ADD oder CMP (Compare) beziehen sich meistens auf Werte, die in DAT-Befehlen gespeichert sind.
"Endlos-Schleife" mit relativer Adressierung:In einem "echten" Assembler könnte man das Programm aber auch absolute Adressen benutzen lassen:
JMP +1 Adresse des nächsten Befehls (Current IP + 1) in den IP kopieren
JMP -1 Adresse des vorigen Befehls (Current IP - 1) in den IP kopieren
"Endlos-Schleife" mit absoluter Adressierung:
&0234 JMP &0235 Den Wert 235 in den IP kopieren
&0235 JMP &0234 Den Wert 234 in den IP kopieren

CORESIZE gerechnet). Das ähnelt einer Addition mit Übertrag, wobei in unserem Fall der Übertrag auf die nächste Stelle einfach verworfen wird. Man kann sich vorstellen, daß sich der Anfang des Speichers gleich hinter dessen Ende befindet, der Speicher ist quasi ringförmig.
