FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Technische Informatik

T3 - Unterprogramm aufteilen

T3 - Unterprogramm aufteilen 2004-12-26 17:19
Anonymer User
Hallo Leute.

Ich habe da mal ein paar Fragen zum Thema "Ein Assembler-Unterprogramm in mehrere Funktionen aufteilen".

Wenn ich nur eine Funktion benutze, ist die Sache klar:

Ich habe mein main.c, indem ich einen Prototypen der Assemblerfunktion deklariere. Dann kann ich die Funktion aufrufen.

Was mache ich denn nun, wenn ich aus dem main eine! Assemblerfunktion aufrufe, die dann weitere Assemblerfunktionen aufruft?

Ich deklariere die erste Funktion im main. Dann kann ich diese aufrufen und komme ins ASM Program:


.section ".text"
.align 4
.global unter

unter:

call test1

call test2

restore


Was mache ich nun mit test1 und test2. Muß ich zwei weitere .s Dateien haben, die einen ähnlichen Rumpf wie unter.s haben und die enthaltenen Funktionen dann auch in main.c als PT deklarieren?
Oder gibt es eine andere Möglichkeit (vielleicht sogar beide Funktionen ebenfalls in der Datei unter.s)?

Danke für die Mühe

Re: T3 - Unterprogramm aufteilen 2004-12-26 19:02
Brokkoli
in die gleiche datei rein… der dateiname der assemblerdatei ist völlig egal für die funktionen da drinnen. (wichtig sind nur die exporte, die du mit ".global" macht)
und .global brauchst du für die unterfunktionen nicht verwenden, wenn diese nicht von "aussen" aufgerufen werden sollen

.section ".text" .align 4 .global wasimmer wasimmer: save ... ... call unterding ... jmp %i7+8 restore unterding: save ... ... jmp %i7+8 restore