junli@junli-VirtualBox:~/Temp$ cat endian.c
#include <stdio.h>
void main()
{
struct {
unsigned char a;
unsigned char b;
unsigned char c;
unsigned char d;
} s = {0x01, 0x00, 0x00, 0x00};
unsigned int i = *(unsigned int*)&s;
printf("0x%x\n", i);
printf("%p %p %p %p\n", &s.a, &s.b, &s.c, &s.d);
}
junli@junli-VirtualBox:~/Temp$ make
powerpc-linux-gnu-gcc -o endian.ppc endian.c --static
arm-linux-gnueabi-gcc -o endian.arm endian.c --static
junli@junli-VirtualBox:~/Temp$ qemu-ppc endian.ppc
0x1000000
0xf6ffee7c 0xf6ffee7d 0xf6ffee7e 0xf6ffee7f
junli@junli-VirtualBox:~/Temp$ qemu-arm endian.arm
0x1
0xf6ffefb0 0xf6ffefb1 0xf6ffefb2 0xf6ffefb3
#include <stdio.h>
void main()
{
struct {
unsigned char a;
unsigned char b;
unsigned char c;
unsigned char d;
} s = {0x01, 0x00, 0x00, 0x00};
unsigned int i = *(unsigned int*)&s;
printf("0x%x\n", i);
printf("%p %p %p %p\n", &s.a, &s.b, &s.c, &s.d);
}
junli@junli-VirtualBox:~/Temp$ make
powerpc-linux-gnu-gcc -o endian.ppc endian.c --static
arm-linux-gnueabi-gcc -o endian.arm endian.c --static
junli@junli-VirtualBox:~/Temp$ qemu-ppc endian.ppc
0x1000000
0xf6ffee7c 0xf6ffee7d 0xf6ffee7e 0xf6ffee7f
junli@junli-VirtualBox:~/Temp$ qemu-arm endian.arm
0x1
0xf6ffefb0 0xf6ffefb1 0xf6ffefb2 0xf6ffefb3