On Fri, 15 Feb 2019 09:42:17 +0100, wolfgang kern   
    wrote:   
   >> Why does this:   
   >> chars64 dq 1111 10111110 11111011 10111000 00000000b   
   >>   
   >> give this error in MASM? The size *is* a quad!   
   >> error A2071:initializer magnitude too large for specified size   
   >   
   >perhaps because your bin is 36 bits large ?   
   >   
      
   >> It works like that:   
   >> chars dd 11111011 11101110 11100000 000000b   
   >> dd 111110b   
   >   
   >why are 30 + 6 bits used instead of 2*32 bit here ?   
      
   I mixed it up typing it in.   
   It should be:   
   ZYXWVUTSRQPONMLKJIHGFEDCBA9876543210   
   chars64 dq 111101111110111110111011100000000000b   
      
   and   
   VUTSRQPONMLKJIHGFEDCBA9876543210   
   chars dd 01111110111110111011100000000000b   
   ZYXW   
    dd 1111b   
      
   I use it to determine with a "bt qword ptr [chars],rax" if it is a   
   valid letter in the program.   
      
   But those 36 bits should fit into a quad. It is probably a bug,   
   because the OP is right   
      
   hchars dq FBEFBB800h   
      
   does work.   
   --   
   aen   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|