*n=(n>>x)|(n<<(32-x));* *ex: n=11101001, x=2 suppose here n is 8 bit long* * n=(11101001>>2)|(11101001<<4)
n=(00111010)|(01000000) now n is 01111010*..... On Tue, Oct 13, 2009 at 9:18 AM, Raghavendra Sharma < raghavendra.vel...@gmail.com> wrote: > @Ankur I am assuming the integer to be 32 bits. actually it should be > 0xFFFFFFFF > step 1 : temp = (0xFFFFFFFF >> (32 - x)) & n; > step 2 : n = (n >> x) | ( temp << (32 -x)); > > The first step extracts the lower x bits and second step moves upper bits > to left side and puts the lower x bits at the beginning. > > for example the integer is 0x12345678 and x = 4 then > temp = 0x8 > > (n >> x) = 0x01234567 and temp << (32 - x) is 0x80000000 > > and (n >> x) | (temp << (32 -x)) ix 0x81234567 > > > So temp will contain > > On Tue, Oct 13, 2009 at 12:07 AM, GauravNITW <gauravkis...@gmail.com>wrote: > >> >> How abt this..? >> >> for(i=0;i<x;i++) >> { >> res=no&1U; >> no=no>>1; >> if(res==1) >> no=no|32768U; >> else >> no=no|0U; >> } >> printf("\nFinal value %u",no); >> >> >> On Oct 12, 8:11 pm, Raghavendra Sharma <raghavendra.vel...@gmail.com> >> wrote: >> > temp = (0xFFFF >> (32 - x)) & n; >> > n = (n >> x) | ( temp << (32 -x)); >> > >> > On Mon, Oct 12, 2009 at 5:32 PM, ankur aggarwal < >> ankur.mast....@gmail.com>wrote: >> > >> > >> > >> > > *You are given a integer and you want to rotate the bits of the number >> by >> > > a value x. Consider the right rotation by x means the least >> significant x >> > > bits should go out from left and take the position of most significant >> x >> > > bits.*- Hide quoted text - >> > >> > - Show quoted text - >> >> >> > > > > -- Thanks & Regards Umesh kewat --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/algogeeks -~----------~----~----~----~------~----~------~--~---