Real value to binary

How can i convert my real value to binary digits?
For example; i have values within [0,25] range and 15 binary digits to represent a variable.(4 variables totally)
How can i do that and also reverse of that?

3 Comments

Fixed point or floating point? And to confirm, the input values are not necessarily integer?
25 requires 5 bits; should we assume 5 bits of integer and 10 bits of fraction?
b
b on 11 May 2012
it will be 3 places after the decimal point.
so i think that i will have 10^3*25 equal size.
that is equal to
2^14 < 25000 < 2^15. so i will have 15 bits. ??
3 decimal places requires 10 bits to resolve (2^(-10) = 1/1024)
You get slightly better resolution if you use 2^10 than if you use 10^3. It depends though on whether resolution is your goal or if "3 decimal places" is your goal.

Sign in to comment.

More Answers (3)

Are you asking things like dec2bin and bin2dec?
x = 20;
dec2bin(20,15)
dec2bin(round(Values * 2^10), 15) - '0'

5 Comments

b
b on 11 May 2012
will i enter my number to "Values"?
And within the range [0,15]
??
Yes, enter you number in Values.
If your range is up to "just less than" 16, then
dec2bin(round(Values * 2^11), 15) - '0'
For 2.154 the result would be
001000100111011
The first 4 bits (0010) are the 2, and the last 11 bits approximate 0.154
b
b on 11 May 2012
Superb, my friend!
Thanks a lot :)
b
b on 11 May 2012
Sorry for that but i want to ask another thing..
my range is between 0 and 25.
when i put e.g. 2.5 to this formula,this gives me wrong result
If you go up to 25 then you need the 2^10 not 2^11

Sign in to comment.

b
b on 11 May 2012

0 votes

Actually, if i put 2.154 as a real value within [0,25]
it should not give me 000000000000010. it represents for my range 0.001 something like that.

Categories

Asked:

b
b
on 11 May 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!