title: Push and Pop in arm
body: <p>I don't really understand how stack commands or how stacks in general work.</p>
  
  <p>Say if I had</p>
  
  <pre><code>PUSH R3
  POP R3
  </code></pre>
  
  <p>Line 1 : Does this mean that the content of R3 would be put onto the top of the stack? Would the contents of the stack then change if R3 changed?</p>
  
  <p>Line 2: On the second line, would the contents at the top of the stack be moved from the stack into R3 OR is the contents of R3 that was pushed onto the stack popped off the stack?</p>
  
  <p>Also what does pop/push do when a register is surrounded in brackets like so</p>
  
  <pre><code>POP {LR}
  </code></pre>