read csv file and convert 'double' to binary
조회 수: 7 (최근 30일)
이전 댓글 표시
f = csvread('S21.csv',double=>binary);
I read .csv file in 'double'
ex) f(1,1) = 1.5111
I want to convert it to binary, 010101010,
no data loss as possible as.
How can I do???
Thank you for your coperation
댓글 수: 0
답변 (1개)
Ameer Hamza
2020년 10월 8일
See dec2hex(): https://www.mathworks.com/help/matlab/ref/dec2hex.html or num2hex(): https://www.mathworks.com/help/matlab/ref/num2hex.html if you want to use IEEE-754 format for conversion.
댓글 수: 4
Walter Roberson
2020년 10월 12일
Note that the above is just one representation of 1.5111, and that it is not to be interpreted as something like
00000101.11000101100011110011000101110111001011011111100000111111
You get closer to that kind of representation with
reshape(dec2bin(typecast(swapbytes(1.5111), 'uint8'),8).', 1, [])
but this again is not to be interpreted as a binary fraction, at least not without careful examination.
The first bit is the sign bit. The next 11 bits are the exponent, with a bias of 1022. The remaining 52 bits are a binary fraction with an implied "1." in front of it.
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!