So, we have seen how we can represent Binary positive and negative integers. Sadly, this does not help . You might have thought about an easy solution, just add a point somewhere. This is indeed correct and helps with this. So, how do you do it with binary numbers? Easy, the numbers to the right of the point will then be taken as:
1/2 , 1/4, 1/8 and so on and so forth. So this would be 2^-1 , 2^-2 . 2^-3 ....... This has a problem though, we can not represent all numbers!!! We can only have a certain approximation and this is some of the issues code have.
Because of the limitations of this, some clever engineers at the Institute of Electrical and Electronics Engineers (IEEE) developed a standard for floating point decimals. This works as what you call a float or a datatype on java and other programs. A float is basically a 32 bit number and a double has twice as much, 64 bits. So it is more precise. The exact name is IEE 754 32 bits and IEEE 754 64 Bits. This is the standard your computer uses.