Register
youngwiki
상위 문서: 컴퓨터 시스템
개요
Registers in x86-64
위의 대부분의 register들은 자유롭게 사용가능하지만, 특정 몇몇은 특정한 용도만을 위해서 사용된다.
- %rip: program counter(instructor pointer)로 사용된다.
- %rsp: stack pointer로 사용된다.
Names for part of Register
각각의 register는 8byte이지만 우리는 또한 해당 register의 lower 4byte, 2byte, 혹은 1byte에 접근할 수 있다.
Rules on the Use of Registers
Register들을 사용하기 위해서는 몇가지 규칙이 존재한다.
- Calling convention
- 함수의 1st, 2nd, 3rd argument는 반드시 %rdi, %rsi, %rdx로 pass된다.
- Return 값은 %rax값이 pass된다.