title: Initializing Big Numbers with Constants in MASM
body: <p>I am trying to write some macros in MASM to handle big numbers (i.e. Numbers with values greater than can be stored in registers).  However, I have run into a problem with creating bignums from constants at assemble time.  It seems that MASM has limits on the size of numerical constants. What I would like to be able to do is something like this:</p>
  
  <pre><code>DECLARE_BIGINT example, 19292109310024103209481293008
  </code></pre>
  
  <p>But I get this error:</p>
  
  <pre>
  error A2071: initializer magnitude too large for specified size
  </pre>
  
  <p>Which I assume means that the constant was larger than MASM can handle.  I thought I might be able to kludge my way around it by declaring the constant as text:</p>
  
  <pre><code>DECLARE_BIGINT example, &lt;19292109310024103209481293008&gt;
  </code></pre>
  
  <p>and then parsing digits out, but I have not been able to figure out how (or even if it's possible) to manipulate text constants in MASM.</p>
  
  <p>Any help would be greatly appreciated.  Also, I'm doing this for fun, and to try to learn assembly and MASM better, so I'd rather not just use a library that does this for me (takes all of the fun out of it).</p>