Convert 32 bit HEX to signed floating point
    53 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    antlhem
 le 1 Nov 2017
  
    
    
    
    
    Commenté : Walter Roberson
      
      
 le 30 Nov 2022
            So far I use the function hexsingle2num to convert a double type number (i.e. 41c1999a = 24.200000762939453) but when I want to use the same to convert ffffffff it gives me NaN, then I have to manually use nhex2dec('ffffffff',32) = -1 (correct answer),same with another example C0728F5C = -3.79. What I am looking for is a way to automatise this process since I have thousands of values. Is there a function in matlab that includes the conversion of HEX to SIGNED floating point?
0 commentaires
Réponse acceptée
  Maitreyee Mordekar
    
 le 13 Nov 2017
        
      Modifié(e) : KSSV
      
      
 le 10 Déc 2019
  
      Hi,
By hexsingle2num function I assume that you are referring to the following File Exchange submission: https://www.mathworks.com/matlabcentral/fileexchange/6927-hexsingle2num
This is one of the several submissions in MATLAB File Exchange on MATLAB Central which is a forum for our product users to interact, exchange information and knowledge, without MathWorks' involvement. You may contact the author of this submission directly for specific questions about the implementation.
However, you can obtain the same results using the following function:
typecast(uint32(hex2dec('C0728F5C')),'single')
Also, if you still need a way to convert hexstring to double precision number then you can consider using hex2num: https://www.mathworks.com/help/matlab/ref/hex2num.html
Hope that helps!
5 commentaires
  Badr Sahib
 le 30 Nov 2022
				Hi,
can you please rearrange your command so that i give -3.79 and i can get 'C0728F5C'.
Plus de réponses (0)
Voir également
Catégories
				En savoir plus sur Logical dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





