Funktion von include-Dateien

Gast #520955
Lesenswert?
• ▲
▼
Nur 'ne kurze Verständnisfrage...
Was bewirken bei der Mikrocontrollerprogrammierung in Assembler die 
Include-Dateien? Sind die wichtig für den Programmer, damit der weiß, 
wie er den Controller programmieren muss oder wird da noch was 
definiert, wie in höheren Sprachen? Kann mir eigentlich nicht 
vorstellen, was da noch definiert sein soll, Assembler ist doch schon 
fast niedrigste Stufe.
#520958
Lesenswert?
• ▲
▼
Warum machst du nicht einfach mal mit
deinem Texteditor so eine Datei auf und schaust hinein?

Dann weist du was da drinnen ist und was da drinnen
definiert wird.

Nur als kleiner Hinweis: Es gibt viele verschiedene
AVR-Controller deren Hardware sich von anderen AVR
Controllern unterschiedet. Wie denkst du, berücksichtigt
das der Assembler?
Gast #520983
Lesenswert?
• ▲
▼
Das war mal 'ne schnelle Antwort...
Hätte ich ja auch mal selbst drauf kommen können. Dachte aber das wären 
Binärdateien, da hätte es halt wenig Sinn die mim Editor zu öffnen. Dass 
der Assembler Informationen über den Controller braucht ist klar, wusste 
aber nicht, ob der die aus den Include-Dateien erhält.
#520993
Lesenswert?
• ▲
▼
Es gibt in ASM aber auch Include-Dateien, die Programmcode enthalten. 
Z.B. wird man den Code für die Ansteuerung eines LCDs nicht in jedes 
Programm einkopieren sondern als separate Datei einbinden. So verfährt 
man auch mit anderen Routinensammlungen für spezielle Hardware (bei 
Hochsprachen Bibliotheken bzw. Libraries genannt).

...
#521494
Lesenswert?
• ▲
▼
@hannes
Find ich gut, das du das hier mal so erwähnt hast. Ich versuche meine 
ASM-Routinen auch so zu programmieren (und dokumentieren), das ich sie 
immer wieder einsetzen kann. Vor ein paar Tagen hat mich gerade jemand 
gefragt:
"Gibt es in Assembler eigentlich auch Libraries??" ;-)
#521501
Lesenswert?
• ▲
▼
Jörn Paschedag wrote:
> @hannes
> Find ich gut, das du das hier mal so erwähnt hast. Ich versuche meine
> ASM-Routinen auch so zu programmieren (und dokumentieren), das ich sie
> immer wieder einsetzen kann. Vor ein paar Tagen hat mich gerade jemand
> gefragt:
> "Gibt es in Assembler eigentlich auch Libraries??" ;-)

Include bedeutet ja nicht mehr als einbinden.
Hat also nicht speziell mit der Registerdefinition zu tun.

Stell Dir vor, Du schreibst ein Programm.
Um es übersichtlich zu halten oder z.B. je nach Anwendung versch. 
Programmteile mit einzubinden.

Man hat dann meistens eine Haupt-ASM Datei, von der aus alle anderen 
Programmteile, Definitionen, Datensegmente mit einbezogen werden.
Persönliche Seite #521529
Lesenswert?
• ▲
▼
Wobei es einen erheblichen Unterschied macht, ob man lediglich Code in 
Include-Dateien auslagert oder tatsächlich Libraries verwendet. Eine 
Library ist auch bei Assemblerprogrammierung keine Include-Datei, 
sondern eine Sammlung mehrerer bereits vom Assembler in Objectcode 
übersetzter Programmteile, die je nach Bedarf vom Linker zum Programm 
dazugelinkt werden.

Das erfordert natürlich einen Assembler, der linkbare Objektdateien 
erzeugt und einen Linker, aber hier lassen sich die in gcc enthaltenen 
Werkzeuge nutzen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.