title: In AVR assembly, what is the value in register r24 after code executes?
body: <p>I have just started to learn about how arrays are stored in registers and I am very confused by how pointers work. </p>
  
  <p>Suppose the pointer Z points to the following character array in memory, which is at address <code>0xABCD</code>:</p>
  
  <pre><code>['1', '3', '2']
  </code></pre>
  
  <p>Given the following snippet:</p>
  
  <pre><code>ld r23, Z+
  ld r24, Z
  </code></pre>
  
  <p>What is the value of <code>r24</code> after the code executes?</p>
  
  <p>Would Z be index 0? Or would it be the value at index 0 which is 1, or does it have something to do with the address <code>0xABCD</code>?</p>
  
  <p>Please be nice. I really want to learn this stuff, my teacher is not the best at explaining. Any help would be greatly appreciated!</p>