13
Adding numbers to memory cells
•[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
•