title: Conversion from eax to rax register
body: <p>In the following code:</p>
  
  <pre><code>!6    movl $5, %ebx
  </code></pre>
  
  <p>The register shows the value of:</p>
  
  <pre><code>rbx 0x0000000000000005
  </code></pre>
  
  <p>Does <code>ebx</code> automatically convert to <code>rdx</code> on a 64-bit architecture? Is writing <code>ebx</code> "wrong" or is more-or-less an alias for <code>rdx</code> when on that architecture? Is there any significant difference between the two? </p>
  
  <p>For example, for me they both produce the same in gdb:</p>
  
  <pre><code>&gt;&gt;&gt; p $rbx
  $3 = 5
  &gt;&gt;&gt; p $rax
  $4 = 1
  &gt;&gt;&gt; p $eax
  $5 = 1
  &gt;&gt;&gt; p $ebx
  $6 = 5
  </code></pre>