Hasty Briefsbeta

More About Jumps Than You Wanted to Know

7 days ago
  • #programming
  • #assembly
  • #x86-64
  • The post is part of a series on x86-64 assembly programming, focusing on jumps and program flow control.
  • Discusses unconditional jumps (jmp) and their various encodings, including relative and absolute jumps.
  • Explains the concept of position-independent code and the challenges of address space layout randomization (ASLR).
  • Covers the call and ret instructions, detailing how they manage function calls and returns.
  • Introduces the syscall instruction, explaining its role in system calls and how it differs between Windows and Linux.
  • Details comparison operations (cmp) and conditional jumps (jz, jnz, ja, jb, etc.), essential for implementing ifs and loops.
  • Provides an example of a loop in assembly to compute the Fibonacci sequence.
  • Concludes with recommendations for further learning and acknowledgments.