•[b] := [b] + [a]
•“a” and “b” mean locations (addresses) “a”
and “b”, names of locations (addresses) 00428504 and 00428500. [a] and [b] mean
contents at the adresses “a” and “b”, simply some numbers
•In C language we write:
•b = b +
a;
•In Assembler we use instruction add
•We cannot use both memory addresses in one
step (instruction): add [b],
[a] We can only use add [b], register
• Here register is like a temporary memory cell:
•register := [a]
•[b] := [b] + register
•In Assembler we write:
•mov eax, [a]
•add [b], eax
•In WinDbg disassembly output we see:
•mov eax,[ArithmeticProject!a (00428504)]
•add [ArithmeticProject!b (00428500)],eax
•