Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Arrays von Strings Kategorie: Programmierung C (von PeterS - 3.09.2008 18:37)
Als Antwort auf Arrays von Strings von Jo - 3.09.2008 15:48

>@Peter, ist es geplant, das Stringhandling bezüglich mehrdim. Arrays zu vebessern, falls ja, bis wann?

Wegen mehrdimensionalen Strings muÃ? ich mit Conrad reden, das ist in der  aktuellen Erweiterung noch nicht
enhalten. Da melde ich mich, wenn ich mehr weiÃ?.

>Warum geht so was wie LCD_WriteText("Hallo") nicht?  Warum der Umweg über eine Dummy Variable?
>Ist geplant das zu verbessern?

Pointer haben zur Zeit 16 Bit, da maximal 64kb Ram adressiert werden müssen. Strings wie "Hallo" mü�ten
aber im Flash liegen. Bei dem M128 sind das 128kb. Die nächste Pointerbreite wären 32bit. Das würde
bedeuten, das alle Pointerübergaben 32bit statt 16bit übergeben würden. Der Zugriff würde doppelt solange
dauern. Zusätzlich müÃ?ten alle Routinen wie  LCD_WriteText() doppelt ausgelegt werden. Ã?ber den Pointer
würde ermittelt, ob der übergebene String im Ram oder im Flash liegt und dann würde zugegriffen.

Man mu� wissen, das die Atmel Mega eine Harvard Architektur haben. Ein Zugriff aus dem Ram erfolgt über
ganz andere CPU Befehle als ein Zugriff auf das Flash. Der Interpreter würde ca. 5-6kb grö�er werden, und
für den freien Programmspeicher bleiben auf dem M32 nur noch 8kb statt 14kb.

Wie Du siehst, ist der Umweg über das Ram keine Willkür. Ich grüble noch, wie man das verbessern kann,
ohne die aufgezählten Nachteile in Kauf nehmen zu müssen.

Gruss Peter


    Antwort schreiben


Antworten:

Re: Arrays von Strings (von Jo - 4.09.2008 11:33)
    Re: Arrays von Strings (von HW - 4.09.2008 16:44)