DIV BL
divides the 16-bit value in AX
by BL
, so you should clear those bits of AX
that you're not using (in this case the entire upper byte). So right before the DIV
, add either:
MOV AH,0
or
XOR AH,AH ; XORing something with itself clears all bits
Or, if you're targetting 80386 or above you can replace Mov Al, Dividend
with MOVZX AX, BYTE PTR Dividend