Tutorial Problems Set 1 (8085 based)
1. Write an 8085 program to add ten numbers stored in consecutive memory address starting from 8067H and store the sixteen bit result at the end of the table.
2. Write an 8085 program to add ten numbers stored in the consecutive memory locations starting from 8081H and display the result in the two output ports. (you can assume any address for the port)
3. Add all the positive numbers stored in the memory location 80A1H to 80AAH. Display the 16-bit result in any ports.
4. Add all the numbers with bit D5 and D3, 1 and 0 respectively, stored in the memory location 90B1H to 90BAH. Display the 16-bit result in any ports.
5. There are two table of data stored at 80A1H and 80B1H having ten data each. Write a program to store the data in the first table to third table starting from address 80C1H if the corresponding data in the first table is greater than the second table else store FFH in the third table.
6. Sixteen bit data are stored in two tables starting at 8050H and 8070H, ten data in each table. Add corresponding data and store it in the third table starting at 8090H. (Never forget the reverse order convention in storing the 16-bit data)
7. Add sixteen bit data stored in two tables and store the result in the corresponding index of the third table if the result in the corresponding index of the third table only if the result is greater than 00FFH, else store 0000H (you can assume any address for the tables)
8. In two tables 16-bit data are stored, each table having ten numbers each. Subtract the data from one table to other and store the result in the third table.
9. Subtract ten 16-bit data stored in one table from the other. Store the result in the third table if the result is positive else store 00.
10. Transfer ten data, which has bit D5 and D0, 0 and 1 respectively from A430H to A440H, else store 00 instead of transformation.
11. Transfer ten data with even parity from location 9270H to 9280H, else transfer the data by clearing bit D7 and setting bit D2.
12. Data is stored from 8040H to 8050H. Transfer the data to other location in reverse order.
13. Add ten 16-bit numbers stored in a table at 9500H and store the 24-bit result at the end of the table.
14. Data is stored from 8050H to 805AH. Insert 5 data after 8055H taking from 8040H, but do not lose the previous content.
15. Ten data are stored from 8080H. Transfer the first 5 numbers at the end of the second table and the rest at the starting of it.
16. Transfer data from 9050H to 9060H only if data is between 30H and 70H else store 00H in the next table.
17. Transfer data from 8250H to 8260H if the number is less than 50H and greater than 80H else store 00H in the destination table.
18. Write a program to count the number of ones of table of ten sixteen bit numbers at 8240H and store the count of one’s in corresponding location of a table at 8260H
19. Write a program to convert binary numbers stored in a table at 8560h to BCD numbers and store the result in the second table at 8570H. Assume no number is greater than 63H (99D).
20. Write a program to convert ten BCD numbers stored at 8350H to binary and store the result at 8360H.
21. Ten data are stored in memory location starting at 8345H. Write a program to convert binary number to BCD number and store the result in the second table in the memory location starting at 8445H if the result is less than hundred.
Copyright (c) 2009 DSBaral