Microprocessor Articles - Page 23 of 42

8085 program to find the sum of first n natural numbers

Rishi Rathor
Updated on 30-Jul-2019 22:30:24

3K+ Views

In this program we will see how to add first n natural numbers.Problem StatementWrite 8085 Assembly language program to add first N natural numbers. The value of N is provided.DiscussionWe are getting the value of N from memory location 8000H. We are using the number N as count variable, in each step we are calculating (A + Count) value, and store them into A. After adding them, the count value is decreased, thus the total series is completed.If the number is 23H(35D), then the sum will be (35*36)/2 = 630 (276H)InputAddressData......800023......Flow DiagramProgramAddressHEX CodesLabelsMnemonicsCommentsF00021, 00, 80LXI H, 8000HPoint to get the ... Read More

8085 program to find sum of digits of 8 bit number

Rishi Rathor
Updated on 30-Jun-2020 05:01:51

1K+ Views

In this program we will see how to add the digits of an 8-bit number.Problem StatementWrite 8085 Assembly language program to add the digits of an 8-bit number stored in memory location 8000H.DiscussionTo get the digits of an 8-bit number, we can use the masking operation. At first we will mask the upper nibble, and then the lower nibble. After masking the lower nibble, we have to rotate it to the right to make it least significant nibble. Then we can simply add it to the stored nibble to get the sum.InputAddressData......80008A......ProgramAddressHEX CodesMnemonicsCommentsF0003A, 00, 80LDA 8000HLoad the number into AF0034FMOV ... Read More

8085 program to add 2-BCD numbers

Jennifer Nicholas
Updated on 30-Jul-2019 22:30:24

6K+ Views

In this program we will see how to add two 8-bit BCD numbers.Problem StatementWrite 8085 Assembly language program to add two 8-bit BCD number stored in memory location 8000H – 8001H.DiscussionThis task is too simple. Here we are taking the numbers from memory and after adding we need to put DAA instruction to adjust the accumulator content to decimal form. The DAA will check the AC and CY flags to adjust a number to its decimal form.InputAddressData......800099800125......Flow DiagramProgramAddressHEX CodesLabelsMnemonicsCommentsF00021, 00, 80LXI H, 8000HPoint to first operandF0037EMOV A, MLoad A with first operandF00423INX HPoint to next operandF00586ADD MAdd Acc and memory ... Read More

8085 program to add two 16 bit numbers

Rishi Rathor
Updated on 30-Jul-2019 22:30:24

19K+ Views

In this program we will see how to add two 16-bit numbers.Problem StatementWrite8085 Assembly language program to add two 16-bit number stored in memory location 8000H – 8001H and 8002H – 8003H.DiscussionIn this program we are pointing the operand addresses using HL and DE register pair. Then adding LSBytes by ADD operator, and after that adding MSBytes using ADC operator to consider the carry flag result. The 16-bit result will be stored at BC register, and by checking the carry bit after addition we can simply put 1 into memory.We are taking two numbersBCAD + FE2D = 1BADAInputAddressData......8000AD8001BC80022D8003FE......Flow DiagramProgramAddressHEX CodesLabelsMnemonicsCommentsF00021, ... Read More

Program to Find the smallest number in an array of data in 8085 Microprocessor

Vrundesha Joshi
Updated on 30-Jul-2019 22:30:24

14K+ Views

In this program we will see how to find the smallest number from a block of bytes using 8085.Problem StatementWrite 8085 Assembly language program to find the smallest number from a block of bytes.DiscussionIn this program the data are stored at location 8001H onwards. The 8000H is containing the size of the block. After executing this program, it will return the smallest number and store it at location 9000H.Logic is simple, we are taking the first number at register B to start the job. In each iteration we are getting the number from memory and storing it into register A. ... Read More

Program to Find the largest number in an array of data in 8085 Microprocessor

Rishi Rathor
Updated on 30-Jul-2019 22:30:24

25K+ Views

In this program we will see how to find the largest number from a block of bytes using 8085.Problem StatementWrite 8085 Assembly language program to find the largest number from a block of bytes.DiscussionIn this program the data are stored at location 8001H onwards. The 8000H is containing the size of the block. After executing this program, it will return the largest number and store it at location 9000H.Logic is simple, we are taking the first number at register B to start the job. In each iteration we are getting the number from memory and storing it into register A. ... Read More

Programming the 8253

Rishi Rathor
Updated on 30-Jul-2019 22:30:24

648 Views

According to the microprocessor point of view, the 8253 is designed and has some specialty port chip I/O. We don't use it for interfering the I/O devices. For performing the application of time it is used. 8253 has the addressed A1 and A0 input pins.The counters have width of 16 bits. If they were 8-bits wide, the delay in time that would be generated is very small. The Least Significant Byte and the Most Significant Byte of a counter is selected by using the same address of the port.The processor here writes to the control port to configure the working of ... Read More

Use of 8259 in an 8086-based system

Anvi Jain
Updated on 29-Jun-2020 14:00:58

2K+ Views

The interrupt requests are accepted by 8259 from eight interrupting devices on the pin ranging fromIR0 toIR7. After that, it identifies the priority interrupt having the highest request from the inputs which are active. It is possible for us to configure the 8259 for the mode of operation of "fixed priority" mode.Here, among the priorities, IR0 has the highest and IR7 has the lowest. If the three inputs IR2, IR4, and IR6 are in active state, then IR2 will have is the highest priority interrupt request than the other active requests. We can mask the requests of the interrupts by installing ... Read More

8085 Program to multiply two 16-bit binary numbers

Jennifer Nicholas
Updated on 30-Jul-2019 22:30:24

3K+ Views

Now let us see a program of Intel 8085 Microprocessor. This program will calculate the multiplication of two 16-bit numbers.Problem StatementWrite 8085 Assembly language program to multiply two 16-bit numbers stored at 8000H -8001H and 8002H - 8003H.DiscussionThis program takes the 16 bit data from memory location 8000H – 8001Hand 8002H – 8003H. The 32 bit results are stored at location 8050H– 8053H.Here we have tested with two 16 bit numbers. The results are as follows      1111H × 1111H = 01234321H       1C24H × 0752H = 00CDFF88HInputfirst inputAddressData......800011800111800211800311......second input AddressData......80002480011C800252800307......Flow DiagramProgramAddressHEXCodesLabelsMnemonicsCommentsF00031, 00, 20LXI SP, 2000H   InitializeStack pointerF0032A, 00, ... Read More

8085 Program to multiply two 2-digit BCD numbers

Anvi Jain
Updated on 30-Jul-2019 22:30:24

4K+ Views

Now let us see a program of Intel 8085 Microprocessor. This program will find the multiplication result of two BCD numbers.Problem StatementWrite 8085 Assembly language program to find two BCD number multiplication. The numbers are stored at location 8000H and 8001H.DiscussionIn this program the data are taken from 8000H and 8001H. The result is stored at location 8050H and 8051H. As we know that 8085 has no multiply instruction so we have to use repetitive addition method. In this process after each addition we are adjusting the accumulator value to get decimal equivalent. When carry is present, we are incrementing the ... Read More

Advertisements