Nicht angemeldet. · Kennwort vergessen · Registrieren

Philipp Stenger
StePh88
Mitglied seit 10/2011
5 Beiträge
Betreff: Klausur August 2011 - Aufgabe 3 a)
Nachdem das hier nur noch hin und her geht ohne dass es um konkrete Fragen geht, stell ich jetzt einfach mal eine:

Klausur August 2011 - Aufgabe 3 a)
Mir ist nicht ganz klar was der Aufgabensteller genau hören will. Laut Vorlesung werden Variablen im RAM abgelegt und der Code in den Flashspeicher, soviel ist hängengeblieben... Wie war das nochmal bei Konstanten? Werden sie in den ROM geschrieben, weil sie ja nur gelesen werden müssen?
Dann soll man noch eine Zuweisung der Variablen des angegebenen Programms machen. Wonach entscheidet sich, welche Variable in welchen Speicher kommt? Wäre super wenn ihr da ein bisschen Licht ins Dunkel bringen könnet.

Danke schonmal!
morty
SPiC-Meister
(Moderator)
Mitglied seit 05/2011
331 Beiträge
Hi, bitte für neue Fragen einen neuen Thread eröffnen (@admin: Bitte trennen)
Zitat von Philipp Stenger:
Klausur August 2011 - Aufgabe 3 a)
Mir ist nicht ganz klar was der Aufgabensteller genau hören will. Laut Vorlesung werden Variablen im RAM abgelegt und der Code in den Flashspeicher, soviel ist hängengeblieben... Wie war das nochmal bei Konstanten? Werden sie in den ROM geschrieben, weil sie ja nur gelesen werden müssen?
Das ist IMO leider keine besonders gute Frage, weil sie sehr von der tatsächlichen Hardware abhängt. Hier geht es aber um der AVR, welcher eine Harvard-Architektur (getrennter Programm- und Datenadressraum) besistzt. Deshalb müssen alle Variablen im Datenadressraum sein. Da der AVR nur RAM und nicht den Flash in den Datenadressraum einblendet, müssen alle Variablen - ob const oder nicht - im RAM liegen.
Genau genommen liegt auch das .data Segment im Flash (sonst würde der Inhalt ja verloren gehen, sobald der Strom weg ist) und wird bei der Initialisierung (bevor die main() aufgerufen wird) mit speziellen Befehlen in den RAM kopiert. Da somit auch const-variablen im RAM liegen, können diese unter Verwendung von Pointern überschreiben werden.
Auf uC mit von-Neuman-Archtektur (Flash und RAM in einem Adressraum) sieht das anders aus.

<Im Skript Nachschau> Ach, warum mache ich mir eigentlich die Mühe das zu erklären?  Das steht doch alles im Skript! Wird sind doch hier nicht mehr in der Schule, wo einem alles Vorgekaut wird und man es nur noch hinkotzen muss! Ihr werdet es doch wohl gerade noch schaffen im Acrobat die Suche zu bedienen?!? Kleiner Tipp: Bearbeiten -> Suche *auskotz* Naja, evtl habe ich nach einem anstrengen Tag einfach zu hohe Anspüche.... *grübel*
Dieser Beitrag wurde am 20.07.2012, 19:03 von morty verändert.
Begründung: ARG Folie genau lesen hilft.....
Phoenix
Mitglied seit 12/2011
4 Beiträge
Wären RAM und Flash dann die Antwort zu  "Welche Speicherbereiche werden beim Übersetzen und Binden bzw. für die Ausführungeines C-Programms angelegt?" oder Stack und Heap ? Und zu  "Welche Arten von Daten befinden sich allgemeinin diesen Bereichen? Ordnen Sie außerdem die obigen Variablen a bis f diesen Bereichen zu"  dann  .bss .data etc... also quasi die Sachen die in 16-1 stehen + die Zuordnung ?
morty
SPiC-Meister
(Moderator)
Mitglied seit 05/2011
331 Beiträge
Zitat von Phoenix:
Wären RAM und Flash dann die Antwort zu  "Welche Speicherbereiche werden beim Übersetzen und Binden bzw. für die Ausführungeines C-Programms angelegt?" oder Stack und Heap ? Und zu  "Welche Arten von Daten befinden sich allgemeinin diesen Bereichen? Ordnen Sie außerdem die obigen Variablen a bis f diesen Bereichen zu"  dann  .bss .data etc... also quasi die Sachen die in 16-1 stehen + die Zuordnung ?

Ich hoffe das ist jetzt wildes Gerate und du hast dir das Skript noch nicht angeschaut.... Aber 16-1 des GSPiC-Scripts sieht gut aus.
Phoenix
Mitglied seit 12/2011
4 Beiträge
Mittlerweile hab ich frage verstanden und entschuldige mich für den kauderwalsch ;)
Schließen Kleiner – Größer + Auf diesen Beitrag antworten:
Prüfcode: VeriCode Gib bitte das Wort aus dem Bild ins folgende Textfeld ein. (Nur die Buchstaben eingeben, Kleinschreibung ist in Ordnung.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Weitere Zeichen:
Gehe zu Forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen