Lab 6 Arithmetic Operations I

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 3
At a glance
Powered by AI
The document describes three activities for practicing arithmetic operations using 8051 assembly language including adding hexadecimal, BCD, and multi-byte BCD numbers.

Activity 1 involves adding 10 bytes of hexadecimal data and storing the result in registers R2 and R3. Activity 2 involves adding 10 bytes of BCD data and storing the result in R2 and R3. Activity 3 involves adding two multi-byte BCD numbers and storing the result in RAM locations 40H-44H.

The ADD instruction performs addition and discards any carry bits while the ADDC instruction performs addition and stores any carry bits. The ADDC instruction is useful for multi-precision additions.

LAB 6

ARITHMETIC OPERATIONS I
OBJECTIVES:
 To code a program to add hex numbers.
 To code a program to add BCD numbers.
 To code a program to add two multi-byte BCD numbers.
 To practice converting data from decimal to binary and hexadecimal systems.

REFERENCE:
 Mazidi and Mazidi, “The 8051 Microcontroller and Embedded Systems,” Chapter 6.

MATERIALS:
 8051 assembler and simulator.

ACTIVITY 1
Write a program to add 10 bytes of data and store the result in
registers R2 and R3. The bytes are stored in the ROM space starting at
200H. The data would look as follows:

MYDATA: DB 92,34,84,129,... ;pick your own data.

Notice that you must first bring the data from ROM space into the CPU's
RAM, then add them together. Use a simulator to single-step the program
and examine the data.

ACTIVITY 2
Write a program to add 10 bytes of BCD data and store the result in
R2 and R3. The bytes are stored in ROM space starting at 300H. The data
would look as follows:

MYDATA: DB 92H,34H,84H,29H,... ;pick your own data.

Notice that you must first bring the data from ROM space into the CPU's
RAM, then add them together. Use a simulator to single-step the program
and examine the data.

ACTIVITY 3
Write a program to add two multi-byte BCD numbers together and
store the result in RAM locations 40H - 44H. The two multi-byte items are
stored in the ROM space starting at 120H and 150H. See the following
example data.

ORG 120H
DATA_1: DB 54H,76H,65H,98H ;number 98657654H
DATA_2 DB 93H,56H,77H,38H ;number 38775693H
Lab Manual for “The 8051 Microcontroller and Embedded Systems” LAB 6
LAB 6
WORKSHEET

Pick your own data for your program. Notice that you must first bring the
data from ROM space into the CPU's RAM and then add them together. Use
a simulator to single-step the program and examine the data.

Name: Date: Class:

1. Explain the difference between the ADD and ADDC instructions.

2. Show how to perform the subtraction: 29H - 21H.

4. True or False. "DA A" must be used for adding BCD data only.

5. Can we use the "DA A" instruction to convert data such as 9CH into BCD
without
first performing an ADD instruction? Explain your answer.

6. Show a simple program to add 2345H and 56F8H.

7. Show a simple program to subtract 2345H from 56F8H.

LAB 6 Lab Manual for “The 8051 Microcontroller and Embedded


Systems”
LAB 6
ARITHMETIC OPERATIONS I

Lab Manual for “The 8051 Microcontroller and Embedded Systems” LAB 6

You might also like