| | |
bitwise shift opratore....
Please support our C advertiser: Programming Forums - DaniWeb Sister Site
![]() |
•
•
•
•
y=x<<1
it will shift left the value
& make x=0100 but how can i store that shifted value... in other variable...?
•
•
Join Date: Oct 2008
Posts: 44
Reputation:
Solved Threads: 11
•
•
•
•
suppose i want to do shift left operation on
x=1010
y=x<<1
it will shift left the value
& make x=0100 but how can i store that
shifted value... in other variable...?
please help me to solve this query
and left shifting the bits once does not give you 0100
but 10100(ie.20)
2.If you want the output to be converted into a binary format
you can try out something like this:
A)If the input_number is greater than 0,
input_number%2 and store the remainder in an array('char'of sufficient size)
B)Divide the input_number by 2.Goto Step A
Place a delimitter such as a'\0' at the end.
The only disadvantage being the binary number so obtained is
reversed
Use a reverse counting loop to get the binary content.
Last edited by zalezog; Jan 16th, 2009 at 7:33 am.
•
•
Join Date: Jan 2009
Posts: 10
Reputation:
Solved Threads: 1
•
•
•
•
suppose i want to do shift left opeartion on
x=1010
y=x<<1
it will shift left the value
& make x=0100 but how can i store that
shifted value... in other variable...?
please help me to solve this query
x=00001010 which is decimal 10 and when you say y=x<<1 the value of y is 00010100 which is decimal 20. x does not change its value when you say y=x<<1, so your original statement is doing precisely what you want.
sorry for mistake but my actually question is,
i want to make one program binary no.s multiplication
(using register method)
i have to follow some rules,
no1=1010
no2=0101
Rules are:
store no1 in 8-bit register (like this way)
no1=10100000
then have to perform shift left opration on it. (shift only one bit)
so,
no1=01000000
if shifted no. is 1 then add no2 with no1
like
no1=01000000
+
no2=00000101 (have to store no2 like this way)
no1=01000101
then agin do shift left operation ...
if shifted value is 1 than add no2 if not then add 0
repeat this process four time
i wann make program for this purpose
so how can i get that shifted bit value (if it 1 or 0)
becaues basis on this opeation is perfomed
i want to make one program binary no.s multiplication
(using register method)
i have to follow some rules,
no1=1010
no2=0101
Rules are:
store no1 in 8-bit register (like this way)
no1=10100000
then have to perform shift left opration on it. (shift only one bit)
so,
no1=01000000
if shifted no. is 1 then add no2 with no1
like
no1=01000000
+
no2=00000101 (have to store no2 like this way)
no1=01000101
then agin do shift left operation ...
if shifted value is 1 than add no2 if not then add 0
repeat this process four time
i wann make program for this purpose
so how can i get that shifted bit value (if it 1 or 0)
becaues basis on this opeation is perfomed
![]() |
Other Threads in the C Forum
- Previous Thread: Non recursive or no recursion implemetation of Permutations of a string
- Next Thread: sorting
| Thread Tools | Search this Thread |
adobe api array arrays bash binarysearch calculate char cm convert copyanyfile copypdffile cprogramme createcopyoffile createprocess() csyntax directory dynamic feet fflush file floatingpointvalidation fork forloop frequency getlasterror givemetehcodez global graphics gtkgcurlcompiling hacking hardware highest homework i/o inches incrementoperators initialization intmain() iso km linked linkedlist linux linuxsegmentationfault list locate logical_drives loopinsideloop. match matrix microsoft motherboard mqqueue multi mysql oddnumber odf open opendocumentformat opensource openwebfoundation pattern pdf performance pointer pointers posix power program programming pyramidusingturboccodes read recursion recv recvblocked repetition scanf scheduling scripting segmentationfault send shape socketprograming socketprogramming stack standard strchr string strings suggestions test testautomation unix urboc user variable voidmain() win32api windows.h






