;square root per dewar book
        mov     al, byte ptr 200h       ;load input data
        mov     cl, 0                   ;count up square root   
        mov     bl, 1                   ;hold odd nums 1, 3 , 5
lp:     cmp     al, bl                  ;can we sub again??
        jb      ex
        sub     al, bl                  ;do the sub!
        add     bl, 2                   ;next odd num
        add     cl, 1                   ;up the count of odd nums
        jmp     lp                      ;check next num
ex:     mov     byte ptr 201h, cl       ;count is now the  square root
        int     20h
        end