이 페이지는 C언어의 함수들을 Assembly 어로 번역해 두는 곳이자,
C언어의 특징들을 살펴보고자 함이다.
(C언어의 특징이라고 하였지만, 번역하는 컴파일러의 특징이라고 해야 옳다.)
C언어의 특징들을 살펴보고자 함이다.
(C언어의 특징이라고 하였지만, 번역하는 컴파일러의 특징이라고 해야 옳다.)
Spec
CPU : model name : AMD Duron(tm) Processor(800)
Linux Kernel : 2.6.12-1-386
Compiler : GNU/GCC (gcc version 4.0.1 (Debian 4.0.1-2))
CPU : model name : AMD Duron(tm) Processor(800)
Linux Kernel : 2.6.12-1-386
Compiler : GNU/GCC (gcc version 4.0.1 (Debian 4.0.1-2))
Tip
GCC Option:
-O# (# == number) Optimization Level
-fomit-frame-pointer 함수를 call 할때 fp를 유지하는 코드(pushl %ebp, leave)를 생성하지 않도록 한다.
-E Preprocess only; do not compile, assemble or link
-S Compile only; do not assemble or link
-o Compile and assemble, but do not link
Mode:
asm(".code16\n");
asm(".code32\n");
GCC Option:
-O# (# == number) Optimization Level
-fomit-frame-pointer 함수를 call 할때 fp를 유지하는 코드(pushl %ebp, leave)를 생성하지 않도록 한다.
-E Preprocess only; do not compile, assemble or link
-S Compile only; do not assemble or link
-o Compile and assemble, but do not link
Mode:
asm(".code16\n");
asm(".code32\n");
gas:
as source.s -o source.o
ld:
ld source.o
as source.s -o source.o
ld:
ld source.o