Statement: Write a program to output contents of B register LSB to MSB on the SOD pin.
| Source program : - MVI C, 08H : Initialize count with 8
- MOV A, B
- BACK: RRC : Rotate B register contents right
- MOV B, A : Save contents of register B
- JNC SKIP : If no carry skip
- MVI A, COH
- SIM : If carry, send high on SOD
- JMP NEXT
- SKIP: MVI A, 40H
- SIM : If no carry, send low on SOD.
- NEXT: CALL DELAY : Wait for specific time
- DCR C : Decrement count by 1
- JNZ BACK : if count = 0 Stop, if not repeat
- HLT : Stop program execution
Delay subroutine: - Delay: LXI D, Count
- Back: DCX D
- MOV A, D
- ORA E
- JNZ Back
- RET
| Flowchart for Program Flowchart for Delay routine | |
Related Programs (Click down)
Generate and display binary up counter
Generate and display BCD up counter with frequency 1Hz
Generate and display BCD down counter
Generate and display the contents of decimal counter