Lokalen Variablen und Effizienz

OP #5216658
Lesenswert?
• ▲
▼
Hi

ich errinere mich an so ein Satz wie:
lokalen variablen in einer Funktion sollten die Breite der Prozessor 
register entsprechen weil sonst wurde eine 8 bit Variable in ein 32 bit 
Register geschrieben, modifiziert und ausmaskiert.
Gilt das noch im allgemeinen und für STM32 ARM Cortex ? (IAR)
Danke
#5217048
Lesenswert?
• ▲
▼
H. R. schrieb:
> Gilt das noch im allgemeinen und für STM32 ARM Cortex ? (IAR)

Ja. Gilt für alle Architekturen, die Register nur in voller Breite 
ansprechen können (oder nicht unter 32 Bits bei 64-Bittern). Also für 
sämtliche ARMs, aber nicht für x86-64.

Allerdings kann man auch stdint.h Typedefs wie int_fast8_t verwenden. 
Die eignen sich auch für 8-Bitter. Da erhält man dann 32 Bits bei ARM, 
hingegen 8 Bits bei AVR.

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