Datentype und µC

#5263155
Lesenswert?

Hallo,

Peter schrieb:
> ich habe einen 16 Bit Controller von Renesas.
>
> Ist es möglich den Datentype Long zu verwenden, wenn ja warum?

Ja, kann man. Du kannst in jedem Controller jeden nur denkbaren Datentyp 
verwenden, du musst dir dann nur Routinen schreiben, mit denen du auf 
diesen Datentyp zugreifen kannst.
Sollte sich die Frage auf die Programmierung deines Controllers mit C 
beziehen, hilft ein Blick in dein Programmierhandbuch. Die 
Wahrscheinlichkeit das dein C-Compiler den Typ "long" unterstützt dürfte 
nahezu bei 100% liegen.

Was willst eigentlich machen?

rhf
#5263162
Lesenswert?

Peter schrieb:
> ich habe einen 16 Bit Controller von Renesas.
> Ist es möglich den Datentype Long zu verwenden, wenn ja warum?

in welchem Zusammenhag ist dir denn diese Frage "in den Sinn gekommen"?

Peter schrieb:
> ...16 Bit Controller können nur 16 Bit breite Datentype verarbeiten.

Nein.

"Natürlich" kann jeder beliebige Controller jeden beliebigen Datentypen 
(numerisch, boolesch, irgendwelchen beliebigen Typ) "abbilden". Wobei 
"abbilden" nicht heißt, daß dieser Controller diesen Datentypen "nativ" 
nutzt, also z.B. durch seine internen Register direkt 1:1 ohne Redundanz 
etc. abbildet.

Auch der Datentyp "short int" (8 bit lang) kann z.B. durch solch jeden 
beliebigen Controller (also nicht nur ein 16 bit Typ von Renesas) 
abgebildet werden.

Klar cann "jeder beliebige Controller" auch Datentypen wie z.B. STRING 
oder ARRAY verarbeiten. Ebenso ist es möglich, daß ein "dummer" 
Controller ohne eigene Arithmetik-Einheit mit gebrochenen Zahlen (float) 
rumrechnen kann.

Er muss es halt nur "stückchenweise" machen, oder die entsprechenden 
Verarbeitungs-Schritte (z.B. Rechen-Verknüpfungen) entsprechend 
"simulieren".

Und je nach Prozessor werden unterschiedliche Bibliotheken zum Einsatz 
kommen: Der eine Controller "kennt" Gleitpunktzahlen-Arithmetik, hat 
z.b. passende Register und eine entsprechende Hardware "inne drin". da 
kann also auf einfache Grundbefehle zurück gegriffen werden. Der Andere 
Controller kann das nicht, er ist einfacher gebaut. Also muss er das 
Gleitzahlen-Rechnen mühselig "Stück für Stück" machen. Wie er das macht, 
shetht in seiner speziellen anderen Bibliothek.
Gast #5263525
Lesenswert?

Peter schrieb:
> ...16 Bit Controller können nur 16 Bit breite Datentype
> verarbeiten.
> oder habe ich ein Denkfehler.
>
> Gruß Peter

SO ein Unsinn.
Wenn du 32 Bit Berechnungen durchführst, wird einfach 2x16Bit Speicher 
adressiert.
Bei 8-bit CPUs eben 4x8bit Speicher.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren