Apparently this algorithm is well known.
The algorithm will build the square root answer bit by bit starting from the left-most bit to the last.
Let's say we will support squaring up to a 8 bit unsigned integer for simplicity.
let res be result
let x be 8 bit unsigned integer
let n be the nth bit in the result where the 0th bit is the last bit.
set res to 0 for nth bit from 3 down to 0 change the nth bit of the res to 1 if res * res > x then: <- The Comparison restore the nth bit back to 0 return res
The return result will be a 4 bit unsigned integer
For Example: Finding the square root of 4
Is this perhaps the Digit by Digit Calculation: Binary Numeral System (base 2)? Wiki Link here
Thank you for your time!