title: Converting very simple ARM instructions to binary/hex
body: <p>I've been trying to use <strong><a href="http://www.nyx.net/~troddis/ARM.html" rel="noreferrer">this page</a></strong> as well as various other guides to figure out how to express very simple ARM instructions as binary and hex. It seems like it should be a straightforward process to me, but I still don't understand. Here's a few examples.</p>
  
  <p>Basic NOP:</p>
  
  <pre><code>       what goes here?          what goes here?
               _↓_                  _____↓____
              |   |                |          |
  mov r0, r0 ; ????00?1101?????????????????????
                           |__||__|
                            ↑    ↑
                   how do I express registers?
  </code></pre>
  
  <p>Same basic question for others.</p>
  
  <p>Comparing two registers:</p>
  
  <pre><code>cmp r1, r0
  </code></pre>
  
  <p>Adding immediate to register value:</p>
  
  <pre><code>add r0, #0x1a
  </code></pre>
  
  <p>All of these tutorials online are excellent at describing how to use instructions like these, but none I have been able to find actually walk through how to convert an ARM instruction in to the binary/hex/machine code into which it gets assembled.</p>
  
  <p>Thanks in advance for your help.</p>