Uploaded by NAJLA MURNI BINTI RAMLE STUDENT

dokumen.tips exercise-8085

advertisement
EXERCISE 1:
1.
What are the various registers in 8085?
Accumulator register, Temporary register, Instruction register, Stack Pointer, Program
Counter are the various registers in 8085.
2.
In 8085 name the 16 bit registers?
Stack pointer and Program counter all have 16 bits.
3.
What are the various flags used in 8085?
Sign flag, Zero flag, Auxillary flag, Parity flag, Carry flag.
4.
What is Stack Pointer?
Stack pointer is a special purpose 16-bit register in the Microprocessor, which holds the
address of the top of the stack.
5.
What is Program counter?
Program counter holds the address of either the first byte of the next instruction to be
fetched for execution or the address of the next byte of a multi byte instruction, which
has not been completely fetched. In both the cases it gets incremented automatically
one by one as the instruction bytes get fetched. Also Program register keeps the address
of the next instruction.
6.
Which Stack is used in 8085?
LIFO (Last In First Out) stack is used in 8085.In this type of Stack the last stored
information can be retrieved first.
7.
What happens when HLT instruction is executed in processor?
The Micro Processor enters into Halt-State and the buses are tri-stated.
8.
What is meant by a bus?
A bus is a group of conducting lines that carriers data, address, & control signals.
9.
What is Tri-state logic?
Three Logic Levels are used and they are High, Low, High impedance state. The high
and low are normal logic levels & high impedance state is electrical open circuit
conditions. Tri-state logic has a third line called enable line.
10. Give an example of one address microprocessor?
8085 is a one address microprocessor.
11. In what way interrupts are classified in 8085?
In 8085 the interrupts are classified as Hardware and Software interrupts.
12.
What are Hardware interrupts?
TRAP, RST7.5, RST6.5, RST5.5, INTR.
13. What are Software interrupts?
1
RST0, RST1, RST2, RST3, RST4, RST5, RST6, RST7.
14.
Which interrupt has the highest priority?
TRAP has the highest priority.
15. Name 5 different addressing modes?
Immediate, Direct, Register, Register indirect, Implied addressing modes.
16. How many interrupts are there in 8085?
There are 12 interrupts in 8085.
17. What is clock frequency for 8085?
3 MHz is the maximum clock frequency for 8085.
18. What is the RST for the TRAP?
RST 4.5 is called as TRAP.
19. In 8085 which is called as High order / Low order Register?
Flag is called as Low order register & Accumulator is called as High order Register.
20.
What are input & output devices?
Keyboards, Floppy disk are the examples of input devices. Printer, LED / LCD display,
CRT Monitor are the examples of output devices.
21. Can an RC circuit be used as clock source for 8085?
Yes, it can be used, if an accurate clock frequency is not required. Also, the component
cost is low compared to LC or Crystal.
22. Why crystal is a preferred clock source?
Because of high stability, large Q (Quality Factor) & the frequency that doesn’t drift
with aging. Crystal is used as a clock source most of the times.
23. Which interrupt is not level-sensitive in 8085?
RST 7.5 is a raising edge-triggering interrupt.
24. What does Quality factor mean?
The Quality factor is also defined, as Q. So it is a number, which reflects the lossness of
a circuit. Higher the Q, the lower are the losses.
25. What are level-triggering interrupt?
RST 6.5 & RST 5.5 are level-triggering interrupts.
2
EXERCISE 2:
1.
Using LDA and STA instructions, write a program that will transfer
five byte of memory from location 3000H through 3004H to location
3200H through 3204H
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
2.
Write a program to exchange the contents of HL register pair with DE
register pair using MOV instruction.
MOV
MOV
MOV
MOV
MOV
MOV
3.
3000H
3200H
3001H
3201H
3002H
3202H
3003H
3203H
3004H
3204H
B,H
C,L
H,D
L,E
D,B
E,C
Write a program to swap lower 4 bit nibble with upper 4 bit nibble of 8
bit data at memory location 2100H and place a result to location
2101H.
LDA 2100H
RAL
RAL
RAL
RAL
STA 2101H
3
4.
Write a program using the ADI instruction to add the two
hexadecimal numbers 3AH and 48H and store the result in memory
location 2100H.
MVI A,3AH
ADI 48H
STA 2100H
5.
Write a program to subtract the number in the D register from the
number in the E register. Store the result in register C.
MOV A,E
SUB D
MOV C,A
6.
Write an assembly language program that AND, OR and XOR
together the contents of register B, C and E and place the result into
memory location 3000H, 3001H and 3002H.
MOV
ANA
ANA
STA
MOV
ORA
ORA
STA
MOV
XRA
XRA
STA
7.
A,B
C
E
3000H
A,B
C
E
3001H
A,B
C
E
3002H
Write a program that store 00H into memory location 2500H through
2510H.
MVI
LXI
LOC:MVI
INX
DCR
JNZ
B,10H
H,2500H
M,00H
H
B
LOC
4
8.
Write an assembly language program to add two 8-bit numbers, the
sum may be of 16-bits.
MVI A,NO1
MVI B,NO2
MVI C,00H
ADD B
JNC LOC
INR C
LOC:MOV L,A
MOV H,C
9.
Write an 8085 assembly language program using minimum number
of instructions to add the 16 bit number in BC, DE & HL. Store the 16
bit result in DE.
DAD B
DAD D
XCHG
10. Develop a program in assembly that subtracts the number in the DE
register pair from the number in the HL register. Place the result in
BC register.
MOV
SUB
MOV
MOV
SBB
MOV
A,L
E
B,A
A,H
D
C,A
11. Sixteen bytes of data are stored in memory locations at 3150H to
315FH. Write a program to transfer the entire block of data to new
memory locations starting at 3250H.
LXI H,3150H
LXI D,3250H
MVI C,10H
LOC:MOV A,M
STAX D
INX H
5
INX D
DCR C
JNZ LOC
12. Write an 8085 assembly language program, which adds two threebyte numbers. The first number is stored in memory locations 3800H,
3801H & 3802H and the second number is stored in memory location
3803H, 3804H & 3805H. Store the answer in memory locations 3810H
upwards.
LHLD 3800H
XCHG
LHLD 3803H
DAD D
SHLD 3810H
LDA 3802H
MOV B,A
LDA 3805H
ADC B
STA 3812H
13. Write an 8085 assembly language program, which checks the number
in memory location 2800H. If the number is an even number, then put
‘FF’ in memory location 2810H, otherwise put ‘00’.
MVI
LDA
RAR
JNC
MVI
LOC:MOV
STA
B,FFH
2800H
LOC
B,00H
A,B
2810H
14. Write a program to count the data byte in memory that equal to 55H
starting at memory location 2800H through 280FH. Place the count
value in B register.
LXI H,2800H
MVI C,10H
MVI B,00H
6
MVI
LOC2:CMP
JNZ
INR
LOC1:INX
DCR
JNZ
A,55H
M
LOC1
B
H
C
LOC2
15. Write an 8085 assembly language program to find the smallest value
between two number in memory location 2800H and 2801. Store the
value in memory location 3000H.
LDA 2800H
MOV B,A
LDA 2801H
CMP B
JM LOC
MOV A,B
LOC:STA 3000H
7
Download