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.