mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Vergleich zwischen 32 und 16bitter


Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich verstehe nicht so ganz den Vorteil der 32bitter, in "C" bei 16bitter 
kann ich auch eine variable als "long" definieren dann habe ich auch 
32Bit??

Gruß

Autor: Jens Plappert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich kann auch au einem 8-bitter eine 32 bit variable definieren.....

Der 32-Bitter kann sie aber AUF EINMAL verarbeiten wo der 16 bitter halt 
schon 2 mal und der 8-bitter 4 mal dran muss.

Autor: Neuling (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, ist auch ein Argument.

Danke

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Außerdem haben 32-Bitter i.Allg. aucheinen 32-Bit-Adressraum, so dass
man bis zu 4 GB Speicher an einem Stück ansprechen kann. Bei den
16-Bittern ist dieser Adressraum oft eingeschränkt.

Der größere Adressraum ist auch eines der Hauptargumente für
64-Bit-Prozessoren, 64-Bit-Rechenoperationen hingegen werden eher
selten benötigt.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In der Praxis liegt der Unterschied nicht so sehr darin, Daten wie breit 
auch immer verarbeiten zu können, sondern in der Fähigkeit mit Adressen 
umzugehen.

8/16-Bit Controller verarbeiten Adressen von Daten i.d.R. 16 Bit breit. 
Was für variable Daten bei vollintegrierten Controllen auch meist 
ausreicht. Aufgrund der Notwendigkeit, mehr Code als 64K adressieren zu 
können, sind Codeadressen jedoch entsprechend breiter und die direkte 
Konsequenz sind getrennte Adressräume für RAM und ROM, folglich 
getrennte Befehle für Zugriff auf Daten im RAM und auf Daten im ROM, was 
sowohl dem Compiler als auch dem Programmierer das Leben erschwert.

32-Bit Controller hingegen arbeiten stets mit einem einzigen Adressraum 
und ein Zeiger kann gleichermassen auf RAM oder auf ROM zeigen.

Es gibt intelligente Kompromisse, wie Microchips PIC30, wo ein Teil vom 
ROM im Datenadressraum eingeblendet ist, um Tabelle, Strings und andere 
konstante Daten ohne Klimmzüge direkt adressieren zu können. Aber die 
Regel ist das nicht, auch Atmel hatte sich da bei den AVRs bislang 
konsequent verweigert, was GCC-Anwendern umständliche und 
fehlerträchtige pgm_read_byte()-Orgien einbringt.

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lieber Andi
Da verwechselst du was:
>Aufgrund der Notwendigkeit, mehr Code als 64K adressieren zu
>können, sind Codeadressen jedoch entsprechend breiter und die direkte
>Konsequenz sind getrennte Adressräume für RAM und ROM, folglich
>getrennte Befehle für Zugriff auf Daten im RAM und auf Daten im ROM, was
>sowohl dem Compiler als auch dem Programmierer das Leben erschwert.
Getrennte Addressräume for RAM(Daten) und ROM(Code) kommen daher, weil 
es sich um Harvard Architekturen handelt (8051 ist ein gutes Beispiel 
64k Code, 64k Daten). Gemeinsamer Adressraum gibt's bei der von Neumann 
Architektur(Bsp. Motorola 6800, 64k Daten und Code)

Übrigens moderne Architekturen haben meist eine Harvard-Architektur, 
also getrennter Adressraum.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.