Andy David says:
I've added a 16bit square root routine (again for the 17c43) that uses successive approximation to find the square root, the binary restoring method I'm fairly sure would be quicker. This is the only 16bit sqrt routine I have specifically for the 17cxx PICs, I've only included it as the original poster requested a 16bit routine. If you really want speed speed speed, I'd rewrite the 32bit routine to be 16bit.Standard disclaimer applies
;========================================================================== ; SQRT16 ; ; Calculates the square root of a sixteen bit number by successive ; approximation. ; ; ; Input in ACCaHI:ACCaLO ; ; Output in ACCbHI ; ; Also uses ACCbLO and ACCcHI. ; ; SQRT16: mov W, #$80 ; movpf WREG,ACCbLO ; set up walking tester bit. clr ACCbHI ; mov W, #$08 ; movpf WREG,ACCcHI ; tstest: movfp ACCbLO,WREG ; set bit for testing. or ACCbHI, W ; movpf WREG,ACCbHI ; mulwf ACCbHI ; square the current estimate. movfp ACCaLO,WREG ; compare PRODH:PRODL with ACCaHI:ACCaLO sub PRODL, W ; movfp ACCaHI,WREG ; subwfb PRODH,WREG ; sb ALUSTA.C ; If the result is <= input, jmp nxtbit ; ... keep this bit set. movfp ACCbLO,WREG ; Result was > input, so reset xor ACCbHI, W ; ... bit to zero. nxtbit: rrncf ACCbLO,f ; rotate tester bit right. decsz ACCcHI ; jmp tstest ; ret
See also:
file: /Techref/scenix/lib/math/sqrt/sqrt16sa_sx.htm, 1KB, , updated: 2004/6/10 13:40, local time: 2020/1/19 20:07,

©2020 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions? <A HREF="http://www.sxlist.com/techref/scenix/lib/math/sqrt/sqrt16sa_sx.htm"> SX Microcontroller Math Method </A> 
Did you find what you needed? 
Welcome to sxlist.com!sales, advertizing, & kind contributors just like you! Please don't rip/copy (here's why Copies of the site on CD are available at minimal cost. 
Welcome to www.sxlist.com! 
.