# 8051 Program to Multiply two 8 Bit numbers

## Problem

Write an ALP for 8051 microcontroller to multiply two numbers. Assume multiplicand is stored in internal memory location 40H and multiplier in memory location 41H. Store the LB and HB of the result in memory location 42H and 43H respectively.

## Algorithm

Step 1: Load multiplicand from internal memory 40h to accumulator.

Step 2: Load multiplier from 41h into register B, the address of register b is F0h

Step 3: Multiply A and B

Step 4: Store the lower byte of result from accumulator to memory address 42h.

Step 5: Store the higher byte of result from register B to memory address 43h.

Step 6: Stop

## Program

MOV A, 40h ; Copy the content of 40h into accumulator

MOV 0F0h, 41h ; Copy content of 41h into register B

MUL AB ; Multiply contents of Accumulator and B register

MOV 42H, A ; Copy the lower byte of result from accumulator to 42h

MOV 43H, 0F0h ; Copy the higher byte of result from B register to 43h

STOP: AJMP STOP ; Stop