Advertisement

Binary Fractions

Binary Fractions

Binary Fractions use the same weighting principle as decimal numbers except that each binary digit uses the base-2 numbering system

We know that decimal (or denary) numbers use the base ten (base-10) numbering system where each digit in a decimal number is allowed to take one of ten possible values in the range of 0 to 9. So moving from right to left along a decimal number, each digit will have a value ten times greater than the digit to its immediate right.

But as well as each digit being ten times bigger than the previous number as we move from right-to-left, each digit can also be ten times smaller than its neighbouring number as we move along in the opposite direction from left-to-right.

However, once we reach zero (0) and the decimal point, we do not need to just stop, but can continue moving from left-to-right along the digits producing what are generally called Fractional Numbers.

A Typical Fractional Number

a fractional number

Here in this decimal (or denary) number example, the digit immediately to the right of the decimal point (number 5) is worth one tenth (1/10 or 0.1) of the digit immediately to the left of the decimal point (number 4) which as a multiplication value of one (1).

Thus as we move through the number from left-to-right, each subsequent digit will be one tenth the value of the digit immediately to its left position, and so on.

Then the decimal numbering system uses the concept of positional or relative weighting values producing a positional notation, where each digit represents a different weighted value depending on the position occupied either side of the decimal point.

Thus mathematically in the standard denary numbering system, these values are commonly written as: 40, 31, 22, 13 for each position to the left of the decimal point in our example above. Likewise, for the fractional numbers to right of the decimal point, the weight of the number becomes more negative giving: 5-1, 6-2, 7-3 etc.

So we can see that each digit in the standard decimal system indicates the magnitude or weight of that digit within the number. Then the value of any decimal number will be equal to the sum of its digits multiplied by their respective weights, so for our example above: N = 1234.56710 in the weighted decimal format this will be equal too:

1000 + 200 + 30 + 4  + 0.5 + 0.06 + 0.007 = 1234.56710

or it could be written to reflect the weighting of each denary digit:

(1×1000) + (2×100) + (3×10) + (4×1) + (5×0.1) + (6×0.01) + (7×0.001) = 1234.56710

or even in polynomial form as:

(1×103) + (2×102) + (3×101) + (4×100) + (5×10-1) + (6×10-2) + (7×10-3) = 1234.56710

 

We can also use this idea of positional notation where each digit represents a different weighted value depending upon the position it occupies in the binary numbering system. The difference this time is that the binary number system (or simply binary numbers) is a positional system, where the different weighted positions of the digits are to the power of 2 (base-2) instead of 10.

Binary Fractions

The binary numbering system is a base-2 numbering system which contains only two digits, a “0” or a “1”. Thus each digit of a binary number can take the “0” or the “1” value with the position of the 0 or 1 indicating its value or weighting. But we can also have binary weighting for values of less than 1 producing what are called unsigned fractional binary numbers.

Similar to decimal fractions, binary numbers can also be represented as unsigned fractional numbers by placing the binary digits to the right of the decimal point or in this case, binary point. Thus all the fractional digits to the right of the binary point have respective weightings which are negative powers of two, creating binary fractions. In other words, the powers of 2 are negative.

So for the fractional binary numbers to the right of the binary point, the weight of each digit becomes more negative giving: 2-1, 2-2, 2-3, 2-4, and so on as shown.

Binary Fractions

binary fraction

etc, etc.

Thus if we take the binary fraction of 0.10112 then the positional weights for each of the digits is taken into account giving its decimal equivalent of:

binary fraction conversion

 

For this example, the decimal fraction conversion of the binary number 0.10112 is 0.687510.

Binary Fractions Example No1

Now lets suppose we have the following binary number of: 1101.01112, what will be its decimal number equivalent.

1101.0111 = (1×23) + (1×22) + (0×21) + (1×20) + (0×2-1) + (1×2-2) + (1×2-3) + (1×2-4)

 = 8 + 4 + 0  + 1 + 0 + 1/4 + 1/8  + 1/16

 = 8 + 4 + 0  + 1 + 0 + 0.25 + 0.125  + 0.0625 = 13.437510

Hence the decimal equivalent number of 1101.01112 is given as: 13.437510

So we can see that fractional binary numbers, that is binary numbers that have a weighting of less than 1 (20), can be converted into their decimal number equivalent by successively dividing the binary weighting factor by the value of two for each decrease in the power of 2, remembering also that 20 is equal to 1, and not zero.

Other Binary Fraction Examples

0.11 = (1×2-1) + (1×2-2) = 0.5 + 0.25 = 0.7510

11.001 = (1×21) + (1×20) + (1×2-3) = 2 + 1 + 0.125 = 3.12510

1011.111 = (1×23) + (1×21) + (1×20) (1×2-1) + (1×2-2) + (1×2-3)

= 8 + 2 + 1 + 0.5 + 0.25 + 0.125 = 11.87510

Converting Decimal to a Binary Fraction

The conversion of decimal fractions to binary fractions is achieved using a method similar to that we used for integers. However, this time multiplication is used instead of division with the integers instead of remainders used with the carry digit being the binary equivalent of the fractional part of the decimal number.

When converting from decimal to binary, the integer (positive sequence right-to-left) part and the fractional (negative sequence from left-to-right) part of the decimal number are calculated separately.

For the integer part of the number, the binary equivalent is found by successively dividing (known as successive division) the integer part of the decimal number repeatedly by 2 (÷2), noting the remainders in reverse order from the least significant bit (LSB) to the most significant bit (MSB), until the value becomes “0” producing the binary equivalent.

So to find the binary equivalent of the decimal integer: 11810

118 (divide by 2)  =  59  plus remainder 0  (LSB)

59 (divide by 2)  =  29  plus remainder 1  (↑)

29 (divide by 2)  =  14  plus remainder 1  (↑)

14 (divide by 2)  =  7  plus remainder 0  (↑)

7 (divide by 2)  =  3  plus remainder 1  (↑)

3 (divide by 2)  =  1  plus remainder 1  (↑)

1 (divide by 2)  =  0  plus remainder 1  (MSB)

Then the binary equivalent of 11810 is therefore: 11101102  ← (LSB)

The fractional part of the number is found by successively multiplying (known as successive multiplication) the given fractional part of the decimal number repeatedly by 2 (×2), noting the carries in forward order, until the value becomes “0” producing the binary equivalent.

So if the multiplication process produces a product greater than 1, the carry is a “1” and if the multiplication process produces a product less than “1”, the carry is a “0”.

Note also that if the successive multiplication processes does not seem to be heading towards a final zero, the fractional number will have an infinite length or until the equivalent number of bits have been obtained, for example 8-bits. or 16-bits, etc. depending on the degree of accuracy required.

So to find the binary fraction equivalent of the decimal fraction: 0.812510

0.8125 (multiply by 2)  =  1.625  =  0.625 carry 1  (MSB)

0.625 (multiply by 2)  =  1.25  =  0.25 carry 1  (↓)

0.25 (multiply by 2)  =  0.50  =  0.5 carry 0  (↓)

0.5 (multiply by 2)  =  1.00    =  0.0 carry 1  (LSB)

Thus the binary equivalent of 0.812510 is therefore: 0.11012  ← (LSB)

We can double check this answer using the procedure above to convert a binary fraction into a decimal number equivalent: 0.1101 = 0.5 + 0.25 + 0.0625 = 0.812510

Binary Fraction Example No2

Find the binary fraction equivalent of the following decimal number: 54.6875

First we convert the integer 54 to a binary number in the normal way using successive division from above.

54 (divide by 2)  =  27  remainder 0  (LSB)

27 (divide by 2)  =  13  remainder 1  (↑)

13 (divide by 2)  =  6  remainder 1  (↑)

6 (divide by 2)  =  3  remainder 0  (↑)

3 (divide by 2)  =  1  remainder 1  (↑)

1 (divide by 2)  =  0  remainder 1  (MSB)

Thus the binary equivalent of 5410 is therefore: 1101102

Next we convert the decimal fraction 0.6875 to a binary fraction using successive multiplication.

0.6875 (multiply by 2)  =  1.375  =  0.375 carry 1  (MSB)

0.375 (multiply by 2)  =  0.75  =  0.75 carry 0  (↓)

0.75 (multiply by 2)  =  1.50  =  0.5 carry 1  (↓)

0.5 (multiply by 2)  =  1.00    =  0.0 carry 1  (LSB)

Thus the binary equivalent of 0.687510 is therefore: 0.10112  ← (LSB)

Hence the binary equivalent of the decimal number: 54.687510 is 110110.10112

Binary Fractions Summary

We have seen here in this tutorial about Binary Fractions that to convert any decimal fraction into its equivalent binary fraction, we must multiply the decimal fractional part, and only the decimal fractional part by 2 and record the digit that appears to the left of the binary point. This binary digit which is the carry digit will ALWAYS be either a “0” or a “1”.

We must then multiply the remaining decimal fraction by 2 again repeating the above sequence using successive multiplication until the fraction is reduced to zero or the required amount of binary bits has been completed for a repeating binary fraction. Fractional numbers are represented by negative powers of 2.

For mixed decimal numbers we must perform two separate operations. Successive division for the integer part to the left of the decimal point and successive multiplication for the fractional part to the right of the decimal point.

Note that the integer part of a mixed decimal number will always have an exact binary number equivalent but the decimal fractional part may not, since we could get a repeating fraction resulting in an infinite number of binary digits if we wanted to represent the decimal fraction exactly.

50 Comments

Leave a Reply to Wayne Storr Cancel reply
Error! Please fill all fields.

  • Olajumoke Ande

    BINARY FRACTIONS

  • Abdi kamal Ahmed

    Binary to fraction

  • Mivule Nelson

    The lessons are wow

  • Nasheriana Pope

    thank you so much for the knowledge!

  • Michael Onyango

    Thanks for the Knowledge.

  • luka Samuel markus

    Write your comment here. I want to part of this communication

  • rich beck

    thank you for the fractional example, it’s nice to see a clear example of Knuth’s radix conversion method 2a (for binary fractions) using the multiplication method, as well as the notes about its progression towards 0, or if not 0, then continuation until desired decimal point precision is reached!

  • manoj

    how to evaluate 1.001011*2^110 this type of questions could you please give me an answer

  • Nasradin Sharif

    Thankyou

  • Adebiyi Samuel

    J

  • BANJOKO OWOLABI REMILEKUN

    This piece is absolutely 💯 👌 impressive. Exact solution to my search.

    Keep it up team

  • Rofiat

    Can I get the explanation of 452.52 base ten to binary?
    I tried it using this method but I didn’t get it

  • Adelegan Folasade

    I convert 198.3281 to binary but the answer is different from the textbook,I used the method you mentioned above

    • Wayne Storr

      19810 = 110001102

      0.012 = 0.2510
      0.00012 = 0.062510
      0.0000012 = 0.01562510

      0.25 + 0.0625 + 0.015625 = 0.32812510

      Thus: 198.328110 = 11000110.0101012

  • Jacob Abosede Dorcas

    I really love this tutorial it helps alot

  • Emmanuel Israel

    I did understand this tutorial it’s really good

  • khadija

    what is the binary form in 84-2-1 of 15 decimal?

  • Tiwalade

    Nice

  • Ali Asghar

    How can e add 14 and 43 in binary number system?

  • Abdulrauf luqman Kolapo

    How can I solve the mixed number involving fraction on binary number system.thanks

  • Daniel

    Need Help please!
    Write the number 11010100 in decimal notation, considering that it has five whole digits and three fractional numbers.
    Thanks

    • Marco

      Hi Daniel, I am assuming your number is positive with unsigned notation, since you have not specified otherwise.

      First let’s split your 11010100 into the 5 integer bits (11010) and your fractional 3 bits (100). Now you only have to follow backward the guide: for the integer you can calculate 0 * 2^0 + 1 * 2^1 + 0 * 2^2 + 1 * 2^3 + 1 * 2^4 = 26, (after some exercise you will immediately realize every 4-bit bin number, so you see 1010 = 10 decimal and you just add the 1*2^4=16).

      For the fractional, same way but remember the negative esponent and moving from the MSB to the LSB: 1*2^(-1)+0*2^(-2)+0*2^(-3) = 0.5

      Sum the two and you find 26.5 in decimal notation.

      A good exercise is to start from any number you like, transform in binary and from that result to decimal again to see if the circle is closed.

      Hope that helps.