I would appreciate it a lot for your patience to explain on a seemingly naive question?
An Arduino Uno with 8-bit MCU (ATmega328), yet we program it with 32 bit C program customs? why?
Arduino Uno(for example), uses the 8-bit AVR MCU (ATmega328), which I understand the addressing mode and basic arithmetic operations are on 8-bit operations,
while when I program in the Arduino IDE, by default I am programming like it is a 32-bit C/C++ program (for example, I can define uint32_t,....or, )
so is this all done by the compiler in Arduino IDE ? (who's that ? avr-gcc? )
and... the compile does more work to translate 32-bit arithmetic operations to 8-bit arithmetic operations ?