title: MASM - Different Variable Names Produce Crash
body: <p>As an assembly beginner, this error I'm getting boggles my mind. I'm working on a homework assignment (not asking for solutions), and I'm trying to store the size of a string in a variable.</p>
  
  <p>So I declare a string, 'message'...</p>
  
  <pre><code>; init message as a string with a line break
  message BYTE    "You already know what the next", 0dh, 0ah
          BYTE    "variable will be, don't you?", 0
  </code></pre>
  
  <p>...and afterwards, I use...</p>
  
  <pre><code>len     EQU     $-message     ; get the size of 'message'
  </code></pre>
  
  <p>...to get the size of message. However, when I tried renaming 'len' to 'length'...</p>
  
  <pre><code>length      EQU     $-message
  </code></pre>
  
  <p>Visual Studio (2015 Enterprise) spits out an error saying...</p>
  
  <pre><code>"initializer magnitude too large for specified size"
  </code></pre>
  
  <p>so........ why is this happening?</p>
  
  <p>Just wondering why I can't name the variable 'length'.</p>