Atmel CAVR-4 Manual De Usuario

Descargar
Página de 323
CAVR-4
Part 2. Compiler reference
Data representation
147
The AVR IAR C/C++ Compiler adheres to these rules for all 8-bit types.
The following object types are treated in a special way:
For all combinations of object types not listed, only rule number one applies.
Data types in C++
In C++, all plain C data types are represented in the same way as described earlier in this 
chapter. However, if any Embedded C++ features are used for a type, no assumptions 
can be made concerning the data representation. This means, for example, that it is not 
legal to write assembler code that accesses class members.
Type of object
Treated as
Global register variables
Treated as a non-triggering volatile
_ _io
 declared variables located
in 0x–0x1F
An assignment to a bitfield always generates a write access, in 
some cases also a read access. If only one bit is updated—set 
or cleared—the sci/cbi instructions are executed. 
Table 37: Volatile objects with special handling