Menu
Coddy logo textTech

Zwei-Dateien-Muster

Teil des Abschnitts Grundlagen der Assembly-Journey von Coddy. Lektion 5 von 45.

Während dieses Kurses wirst du jedes Programm mithilfe von zwei separaten Dateien schreiben:

DateiZweck
data.asmSpeichert alle Daten (Zeichenketten, Zahlen, Variablen)
main.asmSpeichert den gesamten Code (Anweisungen, Logik, Ablauf)

Dies ist für den Assembler nicht erforderlich. Du könntest alles in eine Datei schreiben. Wenn du jedoch Code und Daten trennst, werden deine Programme übersichtlicher, leichter zu lesen und einfacher zu debuggen.

Warum zwei Dateien?

  • Organisation: Daten und Code haben unterschiedliche Zwecke. Wenn du sie getrennt hältst, kannst du klarer denken.
  • Wiederverwendbarkeit: Du kannst dieselbe data.asm mit verschiedenen main.asm-Dateien verwenden.
  • Lesbarkeit: Du musst nie durch lange Zeichenketten scrollen, um deinen Code zu finden.
  • Branchenpraxis: In realen Projekten werden Code und Daten getrennt (wenn auch oft auf komplexere Weise).

So funktioniert es:

Die Datei main.asm bindet die Datei data.asm mithilfe der Direktive %include ein. Dies teilt dem Assembler mit: „Füge den gesamten Inhalt von data.asm genau hier ein, bevor du assemblierst.“

Die beiden Dateien nebeneinander:

data.asmmain.asm
section .data%include "data.asm"
(Variablen kommen hierher)section .text
 global _start
 _start:
 (Anweisungen kommen hierher)

Aufgabe der einzelnen Abschnitte:

AbschnittZweckWelche Datei?
section .dataEnthält Daten, die beim Ausführen des Programms im Speicher vorhanden sinddata.asm
section .textEnthält die ausführbaren Anweisungen (Code)main.asm
global _startMacht den Einstiegspunkt für den Linker sichtbarmain.asm
_start:Marke, an der die Programmausführung beginntmain.asm

Du musst dir section .data, section .text, global _start oder _start: jetzt nicht merken. Wir werden jeden dieser Befehle in den folgenden Lektionen ausführlich behandeln. Konzentriere dich zunächst nur auf das große Ganze und verstehe die Struktur der beiden Dateien.

Probier es selbst

Diese Lektion enthält keine Programmieraufgabe.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Assembly-Playground