That's not how int 21h / function 01h works. The character is returned in AL
:
mov ah,01h ;read a char
int 21h
cmp al,'K'
This code makes no sense:
mov cx,5
mov bl
L3:
dec si
loop L3
It won't assemble since mov bl
isn't a valid istruction. Even if it did, it serves no purpose.
mov ah,05h
int 21h
That's not the function you want. To write a character to the standard output you should use function 02h with the character placed in DL
.