ben c'est pas compliqué:
shr bl, 1 ; décale BL vers la droite d'une position, le bit qui "sort" à droite se retrouve dans le carry; le bit qui "rentre" à gauche est un 0.
rcr bh, 1 ; décale BH vers la droite d'une position, le bit qui "rentre" à gauche est le carry, le bit qui "sort" à droite est le nouveau carry.
Pour te faire réfléchir un peu, ceci est équivalent (à ceci près que le carry vaut tjs 0 à la fin):
ror bx, 1
and bx, 0F7h