How to set individual bits in 64-bit double-precision floating number

5 visualizzazioni (ultimi 30 giorni)
Hi everyone,
I am wondering if it is possible to set individual bits in 64-bit double-precision floating number in MATLAB.
I know that I can use "format hex" to read the bits. But how can I set it?
Thanks Kevin

Risposta accettata

Walter Roberson
Walter Roberson il 5 Mag 2018
Example:
typecast(bitset(typecast(pi,'uint64'),53,1),'double')
Bit numbering is 64 for the most significant bit, down to 1 for the least significant bit.
As the IEEE 754 floating point representation is being altered, the change I made here of effectively adding 1 to the exponent resulting in doubling the result (because IEEE 754 has binary representation, not decimal representation.)
  3 Commenti
Walter Roberson
Walter Roberson il 5 Mag 2018
I have never worked for CIBC or any finance company.
I find a record of Michael Robbins in comp.soft-sys.matlab who worked for CIBC. Looks like he had about 75-ish posts. My active time on comp.soft-sys.matlab did not overlap with him.
Kevin
Kevin il 5 Mag 2018
You are correct. I was thinking about Michael Robbins.
Thanks again for your help.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by