Every microprocessor has an instruction set which can perform a series of instructions (called using assembly commands). Arithmetic instructions are the subcategory of instructions that perform arithmetic operations (addition, subtraction, you know, that shit we learnt in elementary school) and also, logical operations (the heart and soul of every electronic device). Arithmetic operations are in general easily understood, but it must be mentioned that there are only two operands involved in every such operation and the result is always stored in one of the two operands.

Thus, your typical addition as seen in any common programming language does not look like a=b+c but has the nature of the imperative statement:

Add A to B
or rather: Add contents-of-first-register to contents-of-second-register

which in turn, leads to the conclusion that adding two numbers will always overwrite one of them in order to store the result. In standard Intel assembly language, arithmetic and logical operations have a syntax similar to this:

add reg1,reg2

which means "add reg2 to reg1"; oh never uses symbols like +-*/, etc. as in mathematics. These symbols have other uses, more important uses.

Log in or register to write something here or to contact authors.