Azzera filtri
Azzera filtri

how to convert a 16-bit or 64-bit signed floting point to binary

5 visualizzazioni (ultimi 30 giorni)
masters~ now I'm facing a problem that i have to convert some signed floating point numbers to binary, like -4.182068393394077e-04, or 1.3489.
do anybody have some idea or advices?
thanks
  5 Commenti
Yang
Yang il 28 Mar 2013
i don't know what it called in english. what is the type of the number -4.4367e-04 called in english? floating poiont? signed?
Walter Roberson
Walter Roberson il 28 Mar 2013
I have never encountered an unsigned floating point representation. I have encountered unsigned fixed point representations.
The closest you could get to -4.4367e-04 with a signed floating point representation would be to use a scheme with 1 sign bit, 5 exponent bits, 1 "hidden bit", and 10 bits of mantissa. That would allow you to express -(836/1024 + 1) / 2^12, or approximately -4.4346E-04. Notice this only gives you a few decimal places.
5 digits of accuracy requires 16 or 17 bits and the bits for the exponent. 1 sign bit, 5 bits of exponent, 1 hidden bit, 15 bits of mantissa = 21 bits of representation.

Accedi per commentare.

Risposte (2)

Walter Roberson
Walter Roberson il 28 Mar 2013
dec2bin(typecast(TheNumber, 'uint16'), 16) - '0'
  16 Commenti
Walter Roberson
Walter Roberson il 31 Mar 2013
You need binary for the channel encoder. That is
dec2bin(typecast(TheNumber, 'uint16'), 16) - '0'
You can reshape() that to vector form. Just be sure to reshape() it back before using bin2dec() to convert the binary to numeric form.

Accedi per commentare.


Jan
Jan il 28 Mar 2013
What exactly is a "binary stream"? It could be a vector of doubles, which contains only ones and zeros. Of a vector of type LOGICAL, or UINT8. Or remember, that all numbers are stored in binary format on a computer, so perhaps this is enough already:
x = pi;
x_bin = typecast(x, 'uint8')
  2 Commenti
Yang
Yang il 28 Mar 2013
thank you so much. the friend upside gave me a code so i convert a vector of floating point to a vector which only ones and zeros. what could i do to convert it back~
Yang
Yang il 28 Mar 2013
couas i want to convert a celp parameter vector into binary stream so that i could input it to a Turbo encoder to do some tests for my graduation design. is that clear about "binary stream"?

Accedi per commentare.

Categorie

Scopri di più su Convert Image Type in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by