| Picolisp Machine
| Pil Sources
| Social Engineering
Links, Sources and Reading List
ebp is known as the base pointer or the frame pointer.
1. On entry to your function, you push it (to save the value for the calling function).
2. Then, you copy esp, the stack pointer, into ebp, so that ebp now points to your function's stack frame.
3. At the end of your function, you then pop ebp so that the calling function's value is restored.
For some clarification on exactly what is going on -
the push instruction:
1. puts the value from the specified register (ebp in this case), onto the stack, and
2. decrements the stack pointer by the appropriate amount.
The pop operation is the opposite -
1. it increments the stack pointer and takes a value from the stack and
2. puts it in the specified register.