
The Intel MCS-51 family has 111 assembly language instructions that are divided into the five categories shown above, but only a few sample instructions are shown here. The software source code for the program can be developed in C, PL/M, or assembly language. Source code in C or PL/M is compiled into assembly code and then converted (by ASM-51) to object code for program memory. Each instruction (8-bit wide) consists of an operation mnemonic followed by 1 to 4 operands. A simple instruction takes one cycle (0.75 |js) for execution. For example, ADD A, R0 means the data in the accumulator (A) is added with that of register R0 and then stored in A. MUL AB multiplies the 8-bit integer in A and register B, and the result is stored in A (lower byte) and B (higher byte). MOV C, bit transfers the bit (1 or 0) in the specified bit address to carry C location in PSW.