Another of Dmitry Kiryashov's routines is this sequence of instructions for swapping bit pairs in a byte in five instructions/cycles.
; (c) 1998 by Dmitry Kirashov
movwf X ; Save the Incoming Byte in
; a temporary register
; w = X = ABCDEFGH
andlw 0x055 ; w = 0B0D0F0H
addwf X, f ; X = ABCDEFGH + 0B0D0F0H
rrf X, f ; X = (ABCDEFGH + 0B0D0F0h) >> 1
addwf X, w ; w = BADCFEHG
Wow, huh?
| file: /techref/microchip/math/bit/swapbits.htm, 1KB, , updated: 2004/12/6 11:55, local time: 2009/11/21 21:14,
38.107.191.101:LOG IN
|
| ©2009 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? Please DO link to this page! Digg it! <A HREF="http://piclist.com/techref/microchip/math/bit/swapbits.htm"> PIC Microcontoller Bit Math Method Swap two bits in a register</A> |
| Did you find what you needed? |
|
Ubicom SX18 thru SX52, PIC 16c5X compatibile, 50 to 75 MIPS microcontrollers! |
|
.