// how are multibyte integers placed in memory? // some easily identifiable byte patterns uint16_t X = 0x1122; void setup() { uint8_t *p; // a pointer to a byte Serial.begin(9600); Serial.println("Endian Test"); // print the parts of X Serial.print("X is 0x"); Serial.println(X, HEX); p = (uint8_t *) &X; Serial.print("p is 0x"); Serial.println( (uint16_t) p, HEX); Serial.print("*p is 0x"); Serial.println( *p, HEX); Serial.print("*(p+1) is 0x"); Serial.println( *(p+1), HEX); if ( *p == 0x11 ) { Serial.println("This is a big-endian machine."); } else { Serial.println("This is a little-endian machine."); } } void loop() { }