An $8085$ assembly language program is given below
$\begin{array}{ll} & \text{ MVIC, 03H } \\ & \text { LXIH, 2000H } \\ \text { LOOP : } & \text { MOV A, M } \\ & \text { DRCC } \\ & \text { INX H } \\ & \text { MOV B, M, } \\ & \text { CMP B } \\ & \text { JNC LOOP2 } \\ & \text { MOV A, B } \\ \text { LOOP2 : } & \text { DCR C } \\ & \text { JNZ LOOP1 } \\ & \text { STA 210OH } \\ & \text { HLT }\end{array}$
Contents of the memory locations $2000 \mathrm{H}$ to $2002$ $\mathrm{H}$ are
$2000: 18 \mathrm{H} \quad 2001: 10 \mathrm{H}, 2002: 2 \mathrm{BH}$.
- What does the above program do?
- At the end of the program, what will be
- the contents of the registers $\mathrm{A}, \mathrm{B}, \mathrm{C}, \mathrm{H}$ and $L$ ?
- the condition of the carry and zero flags?
- the contents of the memory locations $2000$ $\mathrm{H}, 2001 \mathrm{H}, 2002 \mathrm{H}$, and $2100 \mathrm{H}$.