title: Why is the ALU Opcode for lw and sw 00?
body: <p>I'm trying to wrap my head around data paths and how it works in MIPS programming. A part of understating it, is understanding the ALU Opcodes that essentially tell the ALU which operations to carry out. For example, if we implement the basic <code>AND, OR, ADD, SUB, NAND</code> and <code>NOR</code> functions, we get a basic ALU Opcode distribution, i.e. <code>AND</code> is <code>00</code>, <code>OR</code> is <code>01</code>, <code>ADD</code> is <code>10</code>, <code>SUB</code> is <code>10</code>, <code>NAND</code> is <code>10</code> and <code>NOR</code> is <code>01</code>. But I'm not sure I understand why the ALU Opcode for <code>sw</code> and <code>lw</code> are <code>00</code>?</p>
  
  <p><a href="https://i.stack.imgur.com/TMGXZ.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/TMGXZ.png" alt="enter image description here"></a></p>