title: A question about the value of $sp register in MIPS
body: <p>the question revolves around the MIPS assembly.</p>
  
  <p>Let's says in the start of the program the value of the register $sp (stack pointer) is $sp = 0x1000.</p>
  
  <p>Then I write the command: addi $sp, $sp, -12</p>
  
  <p>What will be the value of $sp now?</p>
  
  <p>Will it be 0xFF4? (since 12 in hexadecimal is C and we subtract it from 1000)</p>
  
  <p>Or do i need to multiply 12 by 4 (since 4 byte is the size of word = 32 bit) and then subtract?</p>