title: Incrementing function pointers
body: <p>I just learned about function pointers (pointers pointing at the adress where where the machine code of a function is stored). This made me think about machine code and how it is stored in memory. </p>
  
  <p>Is the machine code stored consecutively in memory, so that it is possible to "manually" increase the pointer until it points to the following/previous function? </p>
  
  <p>Is this, what a debugger does? He lets me "see" where the program counter is pointing in the machine code?</p>
  
  <p>Conclusion: one can program with function pointers a primitive debugger?</p>
  
  <p>Did I understand this right, or am I way off?</p>