From http://www.myke.com/basic.htm
Sometimes you have to do a fast multiply on a register value with a constant. in 16 Bit Operations and Macros, I go through a number of methods, but I use the following Macro for this purpose for a single byte:FastMul Macro Register, Constant variable i = Constant clrw ; Put the Product in "w" while (i != 0) if ((i & 1) != 0) addwf Register, w ; Add the Current Contents of "Register" to "w" endif bcf STATUS, C ; Shift up the Register's Contents rlf Register, f i = i / 2 ; Shift down the counter value endw endm
Comments:
file: /Techref/microchip/math/mul/8xconst8-mp.htm, 1KB, , updated: 2010/4/5 09:41, local time: 2024/12/21 17:35,
3.141.21.106:LOG IN
|
©2024 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://techref.massmind.org/Techref/microchip/math/mul/8xconst8-mp.htm"> Multiply 8 bits times an 8 bit constant</A> |
Did you find what you needed? |
Welcome to massmind.org! |
Welcome to techref.massmind.org! |
.