OOT: MVI C,3 ; CNT := 3; XRA A ; Clear A; Clear CARRY; MOV A,B ; A := ANSWER; JMP OOTSKIP ; skip around POP first time; OOTLOOP:POP PSW ; restore (A, flags); OOTSKIP:RAL ; rotate A left RAL ; by three RAL ; bit positions; PUSH PSW ; save (A, flags); ANI 7 ; A := A & b'00000111' ; [mask low order]; ORI '0' ; A := A OR b'00110000' ; [add hexadecimal 30]; CALL PUT ; OUTPUT := A; DCR C ; CNT:= CNT - 1; JNZ OOTLOOP ; if CNT NE 0 then repeat; POP PSW ; flush garbage from stack; RET ; return to caller;