A1 is the register, (A1) is the memory location pointed to by A1. So if A1 contains 1000 and D1 contains 50, move D1,A1 sets A1 to 50, but move d1,(a1) sets memory location 1000 to 50 and doesn't change A1 itself.