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 个评论

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?
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.

请先登录,再进行评论。

更多回答(3 个)

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

5 个评论

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
Superb, my friend!
Thanks a lot :)
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

请先登录,再进行评论。

b
b 2012-5-11

0 个投票

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.

类别

在 帮助中心 和 File Exchange 中查找有关 Numeric Types 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by