/* test.c */ #include <stdio.h> int main() { printf("%s", "Hello World"); return 0; } 進行預處理:gcc -E test.c -o test.i 預處理即是將各種 macro、define 等等給展開,所以可以看到 test.i 當中直到最下面才出現原本 test.c 的內容,上面全部都是展開的結果。 /* test.i*/ # 1 "test.c" # 1 "<built-in>" # 1 "<command-line>" # 31 "<command-line>" # 1 "/usr/include/stdc-predef.h" 1 3 4 # 32 "<command-line>" 2 # 1 "test.c" # 1 "/usr/include/stdio.h" 1 3 4 # 27 "/usr/include/stdio.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/libc-header-start.h" 1 3 4 # 33 "/usr/include/aarch64-linux-gnu/bits/libc-header-start.h" 3 4 # 1 "/usr/include/features.h" 1 3 4 # 461 "/usr/include/features.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 1 3 4 # 452 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4 # 453 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/long-double.h" 1 3 4 # 454 "/usr/include/aarch64-linux-gnu/sys/cdefs.h" 2 3 4 # 462 "/usr/include/features.h" 2 3 4 # 485 "/usr/include/features.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 1 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4 # 6 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h" 1 3 4 # 9 "/usr/include/aarch64-linux-gnu/gnu/stubs.h" 2 3 4 # 486 "/usr/include/features.h" 2 3 4 # 34 "/usr/include/aarch64-linux-gnu/bits/libc-header-start.h" 2 3 4 # 28 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 1 3 4 # 209 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4 # 209 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stddef.h" 3 4 typedef long unsigned int size_t; # 34 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdarg.h" 1 3 4 # 40 "/usr/lib/gcc/aarch64-linux-gnu/9/include/stdarg.h" 3 4 typedef __builtin_va_list __gnuc_va_list; # 37 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types.h" 1 3 4 # 27 "/usr/include/aarch64-linux-gnu/bits/types.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4 # 28 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 1 3 4 # 19 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/wordsize.h" 1 3 4 # 20 "/usr/include/aarch64-linux-gnu/bits/timesize.h" 2 3 4 # 29 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4 typedef unsigned char __u_char; typedef unsigned short int __u_short; typedef unsigned int __u_int; typedef unsigned long int __u_long; typedef signed char __int8_t; typedef unsigned char __uint8_t; typedef signed short int __int16_t; typedef unsigned short int __uint16_t; typedef signed int __int32_t; typedef unsigned int __uint32_t; typedef signed long int __int64_t; typedef unsigned long int __uint64_t; typedef __int8_t __int_least8_t; typedef __uint8_t __uint_least8_t; typedef __int16_t __int_least16_t; typedef __uint16_t __uint_least16_t; typedef __int32_t __int_least32_t; typedef __uint32_t __uint_least32_t; typedef __int64_t __int_least64_t; typedef __uint64_t __uint_least64_t; typedef long int __quad_t; typedef unsigned long int __u_quad_t; typedef long int __intmax_t; typedef unsigned long int __uintmax_t; # 141 "/usr/include/aarch64-linux-gnu/bits/types.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/typesizes.h" 1 3 4 # 142 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/time64.h" 1 3 4 # 143 "/usr/include/aarch64-linux-gnu/bits/types.h" 2 3 4 typedef unsigned long int __dev_t; typedef unsigned int __uid_t; typedef unsigned int __gid_t; typedef unsigned long int __ino_t; typedef unsigned long int __ino64_t; typedef unsigned int __mode_t; typedef unsigned int __nlink_t; typedef long int __off_t; typedef long int __off64_t; typedef int __pid_t; typedef struct { int __val[2]; } __fsid_t; typedef long int __clock_t; typedef unsigned long int __rlim_t; typedef unsigned long int __rlim64_t; typedef unsigned int __id_t; typedef long int __time_t; typedef unsigned int __useconds_t; typedef long int __suseconds_t; typedef int __daddr_t; typedef int __key_t; typedef int __clockid_t; typedef void * __timer_t; typedef int __blksize_t; typedef long int __blkcnt_t; typedef long int __blkcnt64_t; typedef unsigned long int __fsblkcnt_t; typedef unsigned long int __fsblkcnt64_t; typedef unsigned long int __fsfilcnt_t; typedef unsigned long int __fsfilcnt64_t; typedef long int __fsword_t; typedef long int __ssize_t; typedef long int __syscall_slong_t; typedef unsigned long int __syscall_ulong_t; typedef __off64_t __loff_t; typedef char *__caddr_t; typedef long int __intptr_t; typedef unsigned int __socklen_t; typedef int __sig_atomic_t; # 39 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h" 1 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h" 1 3 4 # 13 "/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h" 3 4 typedef struct { int __count; union { unsigned int __wch; char __wchb[4]; } __value; } __mbstate_t; # 6 "/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h" 2 3 4 typedef struct _G_fpos_t { __off_t __pos; __mbstate_t __state; } __fpos_t; # 40 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h" 1 3 4 # 10 "/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h" 3 4 typedef struct _G_fpos64_t { __off64_t __pos; __mbstate_t __state; } __fpos64_t; # 41 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/__FILE.h" 1 3 4 struct _IO_FILE; typedef struct _IO_FILE __FILE; # 42 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/FILE.h" 1 3 4 struct _IO_FILE; typedef struct _IO_FILE FILE; # 43 "/usr/include/stdio.h" 2 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h" 1 3 4 # 35 "/usr/include/aarch64-linux-gnu/bits/types/struct_FILE.h" 3 4 struct _IO_FILE; struct _IO_marker; struct _IO_codecvt; struct _IO_wide_data; typedef void _IO_lock_t; struct _IO_FILE { int _flags; char *_IO_read_ptr; char *_IO_read_end; char *_IO_read_base; char *_IO_write_base; char *_IO_write_ptr; char *_IO_write_end; char *_IO_buf_base; char *_IO_buf_end; char *_IO_save_base; char *_IO_backup_base; char *_IO_save_end; struct _IO_marker *_markers; struct _IO_FILE *_chain; int _fileno; int _flags2; __off_t _old_offset; unsigned short _cur_column; signed char _vtable_offset; char _shortbuf[1]; _IO_lock_t *_lock; __off64_t _offset; struct _IO_codecvt *_codecvt; struct _IO_wide_data *_wide_data; struct _IO_FILE *_freeres_list; void *_freeres_buf; size_t __pad5; int _mode; char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)]; }; # 44 "/usr/include/stdio.h" 2 3 4 # 52 "/usr/include/stdio.h" 3 4 typedef __gnuc_va_list va_list; # 63 "/usr/include/stdio.h" 3 4 typedef __off_t off_t; # 77 "/usr/include/stdio.h" 3 4 typedef __ssize_t ssize_t; typedef __fpos_t fpos_t; # 133 "/usr/include/stdio.h" 3 4 # 1 "/usr/include/aarch64-linux-gnu/bits/stdio_lim.h" 1 3 4 # 134 "/usr/include/stdio.h" 2 3 4 extern FILE *stdin; extern FILE *stdout; extern FILE *stderr; extern int remove (const char *__filename) __attribute__ ((__nothrow__ , __leaf__)); extern int rename (const char *__old, const char *__new) __attribute__ ((__nothrow__ , __leaf__)); extern int renameat (int __oldfd, const char *__old, int __newfd, const char *__new) __attribute__ ((__nothrow__ , __leaf__)); # 173 "/usr/include/stdio.h" 3 4 extern FILE *tmpfile (void) ; # 187 "/usr/include/stdio.h" 3 4 extern char *tmpnam (char *__s) __attribute__ ((__nothrow__ , __leaf__)) ; extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__ , __leaf__)) ; # 204 "/usr/include/stdio.h" 3 4 extern char *tempnam (const char *__dir, const char *__pfx) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) ; extern int fclose (FILE *__stream); extern int fflush (FILE *__stream); # 227 "/usr/include/stdio.h" 3 4 extern int fflush_unlocked (FILE *__stream); # 246 "/usr/include/stdio.h" 3 4 extern FILE *fopen (const char *__restrict __filename, const char *__restrict __modes) ; extern FILE *freopen (const char *__restrict __filename, const char *__restrict __modes, FILE *__restrict __stream) ; # 279 "/usr/include/stdio.h" 3 4 extern FILE *fdopen (int __fd, const char *__modes) __attribute__ ((__nothrow__ , __leaf__)) ; # 292 "/usr/include/stdio.h" 3 4 extern FILE *fmemopen (void *__s, size_t __len, const char *__modes) __attribute__ ((__nothrow__ , __leaf__)) ; extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__ , __leaf__)) ; extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__)); extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, int __modes, size_t __n) __attribute__ ((__nothrow__ , __leaf__)); extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, size_t __size) __attribute__ ((__nothrow__ , __leaf__)); extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)); extern int fprintf (FILE *__restrict __stream, const char *__restrict __format, ...); extern int printf (const char *__restrict __format, ...); extern int sprintf (char *__restrict __s, const char *__restrict __format, ...) __attribute__ ((__nothrow__)); extern int vfprintf (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg); extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg); extern int vsprintf (char *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__)); extern int snprintf (char *__restrict __s, size_t __maxlen, const char *__restrict __format, ...) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4))); extern int vsnprintf (char *__restrict __s, size_t __maxlen, const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0))); # 379 "/usr/include/stdio.h" 3 4 extern int vdprintf (int __fd, const char *__restrict __fmt, __gnuc_va_list __arg) __attribute__ ((__format__ (__printf__, 2, 0))); extern int dprintf (int __fd, const char *__restrict __fmt, ...) __attribute__ ((__format__ (__printf__, 2, 3))); extern int fscanf (FILE *__restrict __stream, const char *__restrict __format, ...) ; extern int scanf (const char *__restrict __format, ...) ; extern int sscanf (const char *__restrict __s, const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__)); extern int fscanf (FILE *__restrict __stream, const char *__restrict __format, ...) __asm__ ("" "__isoc99_fscanf") ; extern int scanf (const char *__restrict __format, ...) __asm__ ("" "__isoc99_scanf") ; extern int sscanf (const char *__restrict __s, const char *__restrict __format, ...) __asm__ ("" "__isoc99_sscanf") __attribute__ ((__nothrow__ , __leaf__)) ; # 432 "/usr/include/stdio.h" 3 4 extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__format__ (__scanf__, 2, 0))) ; extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__format__ (__scanf__, 1, 0))) ; extern int vsscanf (const char *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__scanf__, 2, 0))); extern int vfscanf (FILE *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vfscanf") __attribute__ ((__format__ (__scanf__, 2, 0))) ; extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vscanf") __attribute__ ((__format__ (__scanf__, 1, 0))) ; extern int vsscanf (const char *__restrict __s, const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vsscanf") __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__scanf__, 2, 0))); # 485 "/usr/include/stdio.h" 3 4 extern int fgetc (FILE *__stream); extern int getc (FILE *__stream); extern int getchar (void); extern int getc_unlocked (FILE *__stream); extern int getchar_unlocked (void); # 510 "/usr/include/stdio.h" 3 4 extern int fgetc_unlocked (FILE *__stream); # 521 "/usr/include/stdio.h" 3 4 extern int fputc (int __c, FILE *__stream); extern int putc (int __c, FILE *__stream); extern int putchar (int __c); # 537 "/usr/include/stdio.h" 3 4 extern int fputc_unlocked (int __c, FILE *__stream); extern int putc_unlocked (int __c, FILE *__stream); extern int putchar_unlocked (int __c); extern int getw (FILE *__stream); extern int putw (int __w, FILE *__stream); extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream) ; # 603 "/usr/include/stdio.h" 3 4 extern __ssize_t __getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, FILE *__restrict __stream) ; extern __ssize_t getdelim (char **__restrict __lineptr, size_t *__restrict __n, int __delimiter, FILE *__restrict __stream) ; extern __ssize_t getline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream) ; extern int fputs (const char *__restrict __s, FILE *__restrict __stream); extern int puts (const char *__s); extern int ungetc (int __c, FILE *__stream); extern size_t fread (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) ; extern size_t fwrite (const void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __s); # 673 "/usr/include/stdio.h" 3 4 extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) ; extern size_t fwrite_unlocked (const void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream); extern int fseek (FILE *__stream, long int __off, int __whence); extern long int ftell (FILE *__stream) ; extern void rewind (FILE *__stream); # 707 "/usr/include/stdio.h" 3 4 extern int fseeko (FILE *__stream, __off_t __off, int __whence); extern __off_t ftello (FILE *__stream) ; # 731 "/usr/include/stdio.h" 3 4 extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); extern int fsetpos (FILE *__stream, const fpos_t *__pos); # 757 "/usr/include/stdio.h" 3 4 extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)); extern int feof (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)); extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern void perror (const char *__s); # 1 "/usr/include/aarch64-linux-gnu/bits/sys_errlist.h" 1 3 4 # 26 "/usr/include/aarch64-linux-gnu/bits/sys_errlist.h" 3 4 extern int sys_nerr; extern const char *const sys_errlist[]; # 782 "/usr/include/stdio.h" 2 3 4 extern int fileno (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; # 800 "/usr/include/stdio.h" 3 4 extern FILE *popen (const char *__command, const char *__modes) ; extern int pclose (FILE *__stream); extern char *ctermid (char *__s) __attribute__ ((__nothrow__ , __leaf__)); # 840 "/usr/include/stdio.h" 3 4 extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)); extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ; extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)); # 858 "/usr/include/stdio.h" 3 4 extern int __uflow (FILE *); extern int __overflow (FILE *, int); # 873 "/usr/include/stdio.h" 3 4 # 2 "test.c" 2 # 3 "test.c" int main() { printf("%s", "Hello World"); return 0; } 進行編譯得到 assembly file:gcc -S test.i -o test.s .arch armv8-a .file "test.c" .text .section .rodata .align 3 .LC0: .string "Hello World" .align 3 .LC1: .string "%s" .text .align 2 .global main .type main, %function main: .LFB0: .cfi_startproc stp x29, x30, [sp, -16]! .cfi_def_cfa_offset 16 .cfi_offset 29, -16 .cfi_offset 30, -8 mov x29, sp adrp x0, .LC0 add x1, x0, :lo12:.LC0 adrp x0, .LC1 add x0, x0, :lo12:.LC1 bl printf mov w0, 0 ldp x29, x30, [sp], 16 .cfi_restore 30 .cfi_restore 29 .cfi_def_cfa_offset 0 ret .cfi_endproc .LFE0: .size main, .-main .ident "GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0" .section .note.GNU-stack,"",@progbits 進行彙編,將組合語言彙編成機器語言,得到 object file:gcc -c test.s -o test.o。 parallels@ubuntu-linux-20-04-desktop:~/C_playground$ objdump -h test.o test.o: file format elf64-littleaarch64 Sections: Idx Name Size VMA LMA File off Algn 0 .text 00000028 0000000000000000 0000000000000000 00000040 2**2 CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE 1 .data 00000000 0000000000000000 0000000000000000 00000068 2**0 CONTENTS, ALLOC, LOAD, DATA 2 .bss 00000000 0000000000000000 0000000000000000 00000068 2**0 ALLOC 3 .rodata 00000013 0000000000000000 0000000000000000 00000068 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .comment 0000002c 0000000000000000 0000000000000000 0000007b 2**0 CONTENTS, READONLY 5 .note.GNU-stack 00000000 0000000000000000 0000000000000000 000000a7 2**0 CONTENTS, READONLY 6 .eh_frame 00000038 0000000000000000 0000000000000000 000000a8 2**3 CONTENTS, ALLOC, LOAD, RELOC, READONLY, DATA parallels@ubuntu-linux-20-04-desktop:~/C_playground$ hexdump test.o 0000000 457f 464c 0102 0001 0000 0000 0000 0000 0000010 0001 00b7 0001 0000 0000 0000 0000 0000 0000020 0000 0000 0000 0000 0348 0000 0000 0000 0000030 0000 0000 0040 0000 0000 0040 000d 000c 0000040 7bfd a9bf 03fd 9100 0000 9000 0001 9100 0000050 0000 9000 0000 9100 0000 9400 0000 5280 0000060 7bfd a8c1 03c0 d65f 6548 6c6c 206f 6f57 0000070 6c72 0064 0000 0000 7325 0000 4347 3a43 0000080 2820 6255 6e75 7574 3920 342e 302e 312d 0000090 6275 6e75 7574 7e31 3032 302e 2e34 2931 00000a0 3920 342e 302e 0000 0010 0000 0000 0000 00000b0 7a01 0052 7804 011e 0c1b 001f 0020 0000 00000c0 0018 0000 0000 0000 0028 0000 4100 100e 00000d0 029d 019e de48 0edd 0000 0000 0000 0000 00000e0 0000 0000 0000 0000 0000 0000 0000 0000 00000f0 0000 0000 0000 0000 0001 0000 0004 fff1 0000100 0000 0000 0000 0000 0000 0000 0000 0000 0000110 0000 0000 0003 0001 0000 0000 0000 0000 0000120 0000 0000 0000 0000 0000 0000 0003 0003 0000130 0000 0000 0000 0000 0000 0000 0000 0000 0000140 0000 0000 0003 0004 0000 0000 0000 0000 0000150 0000 0000 0000 0000 0000 0000 0003 0005 0000160 0000 0000 0000 0000 0000 0000 0000 0000 0000170 0008 0000 0000 0005 0000 0000 0000 0000 0000180 0000 0000 0000 0000 000b 0000 0000 0001 0000190 0000 0000 0000 0000 0000 0000 0000 0000 00001a0 0000 0000 0003 0007 0000 0000 0000 0000 00001b0 0000 0000 0000 0000 0008 0000 0000 0008 00001c0 0014 0000 0000 0000 0000 0000 0000 0000 00001d0 0000 0000 0003 0008 0000 0000 0000 0000 00001e0 0000 0000 0000 0000 0000 0000 0003 0006 00001f0 0000 0000 0000 0000 0000 0000 0000 0000 0000200 000e 0000 0012 0001 0000 0000 0000 0000 0000210 0028 0000 0000 0000 0013 0000 0010 0000 0000220 0000 0000 0000 0000 0000 0000 0000 0000 0000230 7400 7365 2e74 0063 6424 2400 0078 616d 0000240 6e69 7000 6972 746e 0066 0000 0000 0000 0000250 0008 0000 0000 0000 0113 0000 0005 0000 0000260 0000 0000 0000 0000 000c 0000 0000 0000 0000270 0115 0000 0005 0000 0000 0000 0000 0000 0000280 0010 0000 0000 0000 0113 0000 0005 0000 0000290 0010 0000 0000 0000 0014 0000 0000 0000 00002a0 0115 0000 0005 0000 0010 0000 0000 0000 00002b0 0018 0000 0000 0000 011b 0000 000d 0000 00002c0 0000 0000 0000 0000 001c 0000 0000 0000 00002d0 0105 0000 0002 0000 0000 0000 0000 0000 00002e0 2e00 7973 746d 6261 2e00 7473 7472 6261 00002f0 2e00 6873 7473 7472 6261 2e00 6572 616c 0000300 742e 7865 0074 642e 7461 0061 622e 7373 0000310 2e00 6f72 6164 6174 2e00 6f63 6d6d 6e65 0000320 0074 6e2e 746f 2e65 4e47 2d55 7473 6361 0000330 006b 722e 6c65 2e61 6865 665f 6172 656d 0000340 0000 0000 0000 0000 0000 0000 0000 0000 * 0000380 0000 0000 0000 0000 0020 0000 0001 0000 0000390 0006 0000 0000 0000 0000 0000 0000 0000 00003a0 0040 0000 0000 0000 0028 0000 0000 0000 00003b0 0000 0000 0000 0000 0004 0000 0000 0000 00003c0 0000 0000 0000 0000 001b 0000 0004 0000 00003d0 0040 0000 0000 0000 0000 0000 0000 0000 00003e0 0250 0000 0000 0000 0078 0000 0000 0000 00003f0 000a 0000 0001 0000 0008 0000 0000 0000 0000400 0018 0000 0000 0000 0026 0000 0001 0000 0000410 0003 0000 0000 0000 0000 0000 0000 0000 0000420 0068 0000 0000 0000 0000 0000 0000 0000 0000430 0000 0000 0000 0000 0001 0000 0000 0000 0000440 0000 0000 0000 0000 002c 0000 0008 0000 0000450 0003 0000 0000 0000 0000 0000 0000 0000 0000460 0068 0000 0000 0000 0000 0000 0000 0000 0000470 0000 0000 0000 0000 0001 0000 0000 0000 0000480 0000 0000 0000 0000 0031 0000 0001 0000 0000490 0002 0000 0000 0000 0000 0000 0000 0000 00004a0 0068 0000 0000 0000 0013 0000 0000 0000 00004b0 0000 0000 0000 0000 0008 0000 0000 0000 00004c0 0000 0000 0000 0000 0039 0000 0001 0000 00004d0 0030 0000 0000 0000 0000 0000 0000 0000 00004e0 007b 0000 0000 0000 002c 0000 0000 0000 00004f0 0000 0000 0000 0000 0001 0000 0000 0000 0000500 0001 0000 0000 0000 0042 0000 0001 0000 0000510 0000 0000 0000 0000 0000 0000 0000 0000 0000520 00a7 0000 0000 0000 0000 0000 0000 0000 0000530 0000 0000 0000 0000 0001 0000 0000 0000 0000540 0000 0000 0000 0000 0057 0000 0001 0000 0000550 0002 0000 0000 0000 0000 0000 0000 0000 0000560 00a8 0000 0000 0000 0038 0000 0000 0000 0000570 0000 0000 0000 0000 0008 0000 0000 0000 0000580 0000 0000 0000 0000 0052 0000 0004 0000 0000590 0040 0000 0000 0000 0000 0000 0000 0000 00005a0 02c8 0000 0000 0000 0018 0000 0000 0000 00005b0 000a 0000 0008 0000 0008 0000 0000 0000 00005c0 0018 0000 0000 0000 0001 0000 0002 0000 00005d0 0000 0000 0000 0000 0000 0000 0000 0000 00005e0 00e0 0000 0000 0000 0150 0000 0000 0000 00005f0 000b 0000 000c 0000 0008 0000 0000 0000 0000600 0018 0000 0000 0000 0009 0000 0003 0000 0000610 0000 0000 0000 0000 0000 0000 0000 0000 0000620 0230 0000 0000 0000 001a 0000 0000 0000 0000630 0000 0000 0000 0000 0001 0000 0000 0000 0000640 0000 0000 0000 0000 0011 0000 0003 0000 0000650 0000 0000 0000 0000 0000 0000 0000 0000 0000660 02e0 0000 0000 0000 0061 0000 0000 0000 0000670 0000 0000 0000 0000 0001 0000 0000 0000 * 0000688 彙編完之後還要進行連接(linking)。