```Date: Jul 17, 2013 9:41 AM
Author: Steven Lord
Subject: Re: problem in reading large deimal number

"seeker_123 " <vinuhere5653@gmail.com> wrote in message news:ks5c8i\$ls8\$1@newscl01ah.mathworks.com...> hiii>>  my main intention to convert decimal number to IEEE 754 form.> so for that conversion i am going to use below function> -----------------------------------------------------------------------------------------------> function s = num2bin(x)> s = sprintf('%bx',x);> t = sprintf('%bx',2);> if t(1)==0>  s = reshape(fliplr(reshape(s,2,8)),1,16); end> s = reshape(dec2bin(hex2dec(s'),4)',1,4*16);> ------------------------------------------------------------------------------------------------->> function calling fid = fopen('decimal.txt','r');> x = fscanf(fid,'%f',1)> y = num2bin(x)> fclose(fid)>> where x will be decimal no.> which i am going to read from a file this function works fine if decimal > number is small> if it is large like this> 89884656743115795386465259539451236680898848947115328636715040578866337902750481566354238661203768010560056939935696678829394884407208311246423715319737062188883946712432742638151109800623047059726541476042502884419075341171231440736956555270413618581675255342293149119973622969239858152417678164809964723200> then it x is truncating>   8.9885e+307> this i dont want because i am loosing precisionThat's unavoidable. The large number you posted is not exactly representable as an IEEE 754 double precision number. The best you can do is to work symbolically with Symbolic Math Toolbox.s = sym('89884656743115795386465259539451236680898848947115328636715040578866337902750481566354238661203768010560056939935696678829394884407208311246423715319737062188883946712432742638151109800623047059726541476042502884419075341171231440736956555270413618581675255342293149119973622969239858152417678164809964723200')-- Steve Lordslord@mathworks.comTo contact Technical Support use the Contact Us link on http://www.mathworks.com
```