; Square root Stack Segment Stack DW 20 DUP (?) Stack Ends
Data segmentn db 20hm db 01i db 01hdata ends
Codes Segment Assume Cs: Codes, DS: Data, ES: Nothing, SS: StackMain: Mov AX, Data MoV DS, AX
Again: MOV Al, M CMP AL, N JAE DONE MOV Al, I MOV BL, 2 MUL BL ADD M, Al INC I JMP AGAIN
DONE: MOV Al, M CMP Al, N Je EXIT SUB I, 1EXIT: MOV DL, I Add DL, 30H MOV AH, 02H INT 21h MOV AX, 4C00H INT 21HCODES Ends End Main
; Algorithm principle (x 1) 2 = x2 2 * x 1 MI = I2, then Mi 1 = Mi 2 * i 1 use this type iterative