Inline assembler for Dummies
    novice2 
    sorry at noem.ail
       
    Sun Dec  2 11:56:31 PST 2007
    
    
  
> Anyway: what's the difference between EAX and [EAX]?
EAX="opearnd is EAX register itself"
[EAX]="operand is memory pointed by address in EAX"
>And: how do you get the address of a variable in assembler anyway?
lea register, variable
small eample:
#void main()
#{
#  uint var1;
#  uint var2;
#
#  asm
#  {
#    mov  var1, 13;  //var1 = 13
#  }
#  printf("var1 now contain: %d\n", var1);
#
#  asm
#  {
#    lea  EAX, var1;  //EAX = address of var1
#    mov  var2, EAX;  //var2 = var1
#  }
#  printf("var2 now contain address of var1: 0x%p\n", var2);
#}
    
    
More information about the Digitalmars-d-learn
mailing list