title: GCC #define statement bytes wrong order
body: <p>For a project I am working on I use magic numbers.
  This macro is used to define one</p>
  
  <pre><code>#define BOOTSIGNATURE 0xAA55
  </code></pre>
  
  <p>However, when I HEXDUMP the resulting file, where it should say AA55 it says 55 AA.</p>
  
  <p>Is GCC Mixing up endianness, or am I? This project is for the x86 processor. AA 55 needs to be in that specific order. I could just exchange the bytes, but I am curious as to why GCC does this.</p>