Funktionsprolog und Funktionsepilog

Gast #3577066
Lesenswert?
• ▲
▼
Hallo!
Ich muss wieder einmal theoretische fragen beantworten und suche 
Antworten für zwei von 8 fragen:
Was passiert wenn ein Interrupt Auftritt? Erklären sie welche Schritte 
von der Hardware, vom C-Compiler und welche vom Entwickler ausgeführt 
werden.

Hier hätt ich gsagt, dass die Hardware aus der interrupt vector table 
die sprungadresse holt und dort reinspringt. weitere interrupts werden 
automatisch deaktiviert und och muss selber das sreg sichern und die 
register die ich dann brauche, danach kommt die interruptabarbeitung 
dessen code ich selber deifniere. zuletzt widerherstelle ich den 
prozesszustand vor dem interrupt (register zurücksichern,sreg wieder 
zurückholen) und kehre mit reti zurüclk zur alten sprungadresse dabei 
werden die interrupts wieder aktiviert (bin ich das oder macht das die 
hardware? denn das geschieht ja implizit durch retir oder?)
fehlt da noch was?

Erklären Sie, was ein Funktionsprolog bzw. Funktionsepilog ist.
keine Ahnung
literarische erklärungen xD und msdn 
(http://msdn.microsoft.com/de-de/library/tawsa7cb.aspx) konnten meine 
frage nicht beantworten
ich hoffe ihr könntet mir helfen

mfg
rhood
Gast #3577155
Lesenswert?
• ▲
▼
Bitflüsterer schrieb:
> In den Details gibt es da Unterschiede je nach Prozessor, so das
> der
> Compiler evtl. mehr oder weniger tun muss. Nenne also mal den Prozessor
> um den es geht.

es ist der atxmega128a1

Fred schrieb:
> Was genau am ersten Satz des Wikipedia-Artikels gefällt dir denn nicht?

also ich finde nur die literarische definition auf wikipedia
http://de.wikipedia.org/wiki/Prolog_%28Literatur%29
Gast #3577404
Lesenswert?
• ▲
▼
rhood schrieb:
> Hier hätt ich gsagt, dass die Hardware aus der interrupt vector table
> die sprungadresse holt und dort reinspringt. weitere interrupts werden
> automatisch deaktiviert und och muss selber das sreg sichern und die
> register die ich dann brauche, danach kommt die interruptabarbeitung
> dessen code ich selber deifniere. zuletzt widerherstelle ich den
> prozesszustand vor dem interrupt (register zurücksichern,sreg wieder
> zurückholen) und kehre mit reti zurüclk zur alten sprungadresse dabei
> werden die interrupts wieder aktiviert (bin ich das oder macht das die
> hardware? denn das geschieht ja implizit durch retir oder?)
> fehlt da noch was?

Die Methodik des "Schnellesens" wird verringert, da hast du recht :)

Hier hätte ich gesagt, dass die Hardware aus dem interrupt vector table
die Sprungadresse holt und dort reinspringt. Weitere interrupts werden
automatisch deaktiviert und ich muss selber das SREG und die Register 
die ich brauche sichern, danach kommt die Interruptabarbeitung
dessen Code ich selber definiere. Zuletzt widerherstelle ich den
Prozesszustand vor dem interrupt (Register zurücksichern, SREG wieder
zurückholen) und kehre mit reti zurück zur alten Sprungadresse. Dabei
werden die interrupts wieder aktiviert (bin ich das oder macht das die
hardware? Denn das geschieht ja implizit durch das reti oder?)
Fehlt da noch was?

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.