www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8 bit oder 16 bit


Autor: Qqqqqqq Aaaaaaa (spaceeagle)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nur mal kurz ne Frage
Controller 8 Bit Datenbuss ist es da ohne Probleme möglich
rechenoperationen wie zb x=277+1604 auszuführen oder brauche ich da
schon einen 16 Bitz Controller?

Unabhängig davon was sind gute Alternativen zum Atmega8 bzw. Atmega16
als 16Bit Version ?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Datenbusbreite ist nicht ausschlaggebend.
Entscheidender ist die Größe der von der CPU bzw. der darin enthaltenen
ALU verarbeitbaren Daten.

Eine reine 8-Bit-CPU muss also für eine Addition wie die angegebene
mehrere Schritte durchführen (sprich: Du musst dafür ein Programm
schreiben), während eine CPU mit "breiterer" ALU etc. das mit einer
Maschineninstruktion erledigen kann.

Die Datenbusbreite kommt hier nur als Geschwindigkeitsfaktor ins Spiel;
auf einem 8-Bit-Datenbus benötigt die Übertragung von 16-Bit-Werten
logischerweise doppelt so lange wie auf einem 16-Bit-Datenbus.

Es gab sogar 32-Bit-Prozessoren mit 8-Bit-Datenbus (68008). Wobei sich
hier die Geister spalten, ob 68000/68008 als 32-Bit-Prozessoren zu
bezeichnen sind; die Register und verarbeiteten Operanden sind
jedenfalls 32 Bit breit, auch wenn's die (für den Programmierer eh
nicht direkt wahrnehmbare) ALU nicht ist.

Natürlich lassen sich auch mit 8-Bit-CPUs wie der AVR-Reihe
32-Bit-Berechnungen und sogar Floating-Point-Berechnungen durchführen,
sie benötigen nur mehr Maschineninstruktionen als eine 16- oder
32-Bit-CPU dafür benötigen würde.

Man stelle sich vor, daß das nicht möglich wäre; dann hätten all' die
Homecomputer aus den 80ern nicht rechnen können ... das waren nämlich
vor VC Amiga und ST fast alles reine 8-Bit-Rechner.


Eine 16-Bit-Alternative zu den AVRs ist die MSP430-Familie von TI; eine
recht reizvolle 32-Bit-Alternative sind die verschiedenen ARMe von den
verschiedensten Herstellern (Atmel mit den AT91SAM7Sxxx, Philips mit
den LPC2xxx und etliche andere).

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein AVR kann das rechnen. Man nimmt das Carry-Flag als Übertrag.

 add Wert1_L,Wert2_L    ;Beide Low-Bytes addieren, Übertrag ins Carry
 adc Wert1_H,Wert2_H    ;Beide High-Bytes und Übertrag addieren,
                        ;neuen Übertrag ins Carry
 ;und so weiter, wenn die Zahlen mehrere Bytes haben...

Mit 16-Bit-MCs kenne ich mich nicht aus, sorry...

...

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@HanneS:

Kennst Du einen, kennst Du alle...

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Unbekannter:

> Kennst Du einen, kennst Du alle...

Im Prinzip ja, aber nur, wenn man sich auch damit beschäftigt. Und ich
beschäftige mich damit nunmal nicht.

Die Architektur des (Kerns des) AVRs habe ich so halbwegs im Kopf, von
den 16-Bittern weiß ich nur, dass es sie gibt. Und da ich dieses
"Spezialwissen" nicht habe, werde ich darüber keine (Vergleichs-)
Diskussion mitmachen. Dann stehe ich lieber dazu, dass ich davon
"keine Ahnung" habe... ;-)

Bit- & Bytebruch...
...HanneS...

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.