6. Arithmetic operations

Any software language needs to support the basic functions of a running program and a low level language is no different.

It must be able to support the basic arithmetic operations of adding, subtracting, multiplying and dividing.

These operations are determined by a set of fairly self-evident mnemonics such as

Mnemonic Comment Code Operation
ADD Add ADD dest, source Dest = dest + source
ADDC Add with carry ADDC dest, source Dest = dest + source +CF
SUB Subtract SUB dest, source dest = dest - source
MUL Multiply MUL dest, source dest = dest * source
DIV Divide DIV dest, source dest = dest / source
INC Increment INC Op Op = Op + 1
DEC Decrement DEC Op Op = Op - 1

The full instruction set of an actual CPU also includes variations to the basic arithmetic operations such as signed arithmetic, bit shifts and bit rotations.

Operations such as additions have a single op code followed by two operands. On the other hand operations such as incrementing and decrementing only need one operand.

There are flags also available in the Program Status Word (PSW) register to indicate that the operation may have caused an overflow or underflow. There is also a carry flag available to indicate if the operation has resulted in an arithmetic carry (or borrow) has occurred


Challenge see if you can find out one extra fact on this topic that we haven't already told you

Click on this link: CPU instruction set



Copyright © www.teach-ict.com