Forum: Mikrocontroller und Digitale Elektronik Frage bezüglich Berechnung und Interrupts


von Gerd (Gast)


Lesenswert?

Ich würde gerne wissen, was passiert, wenn man eine längere Rechnung, 
wie z.b.

ABC = (((xyz * 123) * PI) / 243) + 54);

rechnet und genau während dieser Berechnung ein Interrupt dazwischen 
kommt.
So etwas wird ja nicht auf einmal gerechnet - springt der Controller 
danach wieder an die entsprechende Stelle zurück und macht dort weiter, 
oder kann da was verloren gehen?

von ich (Gast)


Lesenswert?

es geht nichts verloren, ausser du programmierst in asm und baust mist.

von Gerd (Gast)


Lesenswert?

ich schrieb:
> ausser du programmierst in asm und baust mist

Nee, wenn baue ich Mist in C. ASM nicht.

von Skua C. (skua)


Lesenswert?

Gerd schrieb:
> o etwas wird ja nicht auf einmal gerechnet - springt der Controller
> danach wieder an die entsprechende Stelle zurück und macht dort weiter,
> oder kann da was verloren gehen?

Das ist der Witz am Interrupt das es da weitergeht wo es unterbrochen 
wurde.

von Gerd (Gast)


Lesenswert?

Skua C:\> schrieb:
> Das ist der Witz am Interrupt das es da weitergeht wo es unterbrochen
> wurde.

Ja klar, nur ich hatte hier und da mal was von "auf dem Stack" sichern 
gesehen...gilt das nur für ASM dann, oder wie?

von Peter (Gast)


Lesenswert?

Gerd schrieb:
> Ja klar, nur ich hatte hier und da mal was von "auf dem Stack" sichern
> gesehen...gilt das nur für ASM dann, oder wie?
das gilt immer, nur das es bei C der Compiler es für dich macht.

von U.R. Schmitt (Gast)


Lesenswert?

Gerd schrieb:
> Ja klar, nur ich hatte hier und da mal was von "auf dem Stack" sichern
> gesehen...gilt das nur für ASM dann, oder wie?

Das ist wie wenn ein 18 jähriger Party im Haus der Eltern macht, wenn 
diese im Urlaub sind. Man kann fast alles in der Interruptroutine 
machen, man muss nur rechtzeitig fertig werden und bevor die Eltern 
heimkommen alles wieder so herrichten wie es vorher war.
Dann merken die nix. Tust Du das nicht, gehts (auf dem µC immer) schief 
:-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.