#include #include unsigned int code[] = { 0xA0000000, // syscall exit // Address: 0x00000000 0xE0000007, 0xA0000001, 0xA0000000 }; unsigned int data[] = { 0x00000000 }; typedef struct _Header378Binary { unsigned char MagicCode[4]; unsigned int DataSize; unsigned int CodeSize; unsigned int InitialPC; } Header378Binary; int main() { FILE *fp = fopen("non378.binary", "wb"); Header378Binary Header; Header.MagicCode[0] = '3'; Header.MagicCode[1] = '7'; Header.MagicCode[2] = '8'; Header.MagicCode[3] = '5'; Header.DataSize = sizeof(data); Header.CodeSize = sizeof(code); Header.InitialPC = 0x00000004; printf("code=%d, data=%d\n", sizeof(code), sizeof(data)); fwrite(&Header, 1, sizeof(Header), fp); fwrite(data, 1, sizeof(data), fp); fwrite(code, 1, sizeof(code), fp); fclose(fp); }