# Binary Fractions

- Muhammad Shahid
- m_shahid@live.co.uk
- 774 Views
- 0 Comments

### Binary Fractions

The number representing a value may have two parts that are an integer and a fractional part. The separation between these two parts is represented by a point (dot). The fractional part represents a value between two integers to express precision. The number can also be represented by just a whole number without a fraction which is merely dependent upon the amount of precision required in presenting the value. The number, with the fraction part, could belong to any numbering system i.e. decimal, binary, hexadecimal, etc.

Let us first examine the **fractions** in the commonly used decimal numbering system which is a base-10 numbering system. Being a base-10 number, it has the potential to select any of the ten (10) possible numbers to represent a digit’s value. The ten (10) possible numbers are 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Further to this, each decimal digit has a positional weight that it carries which increases by ten (10) times for each positional step from right to left. Conversely, the positional weight of each decimal digit decreases by ten (10) times with each positional step from left to right. In expression, it can be represented by (10^{n}) wherein “n” represents the position of a decimal digit. Whilst moving along left to right, the positions beyond “n = 0” are represented by negatives i.e. -1, -2, -3, …, etc., and, as such, their positional weight decreases by ten (10) with each step. These negative positional weights along with respective digit values constitute a **Fractional Number**. The separation between positive (“n=0”) and negative positional (“n=-1”) values is represented by a **decimal point**.

It is known from previous articles that a given number is a weighted sum of its digits’ values and relative positional weights. This is can be expressed as follow:

### Fractional Number Example

Consider an example of **(123.456 _{10})** which is a decimal number consisting of an integer and fractional parts separated by a decimal point. The numbers to the left and right of the decimal point (.) constitute

**integer**and

**fractional**parts, respectively. According to this, the 123

_{10}is an integer part whereas the 456

_{10}makes the fractional part of the given (123.456

_{10}) number. The positional weight of each digit depends on its relative position from the decimal point. This is illustrated below:

The positional weights of digits 1, 2, and 3 to the left of the decimal point are 10^{2 }(100), 10^{1} (10), and 10^{0} (1), respectively. Likewise, the digits 4, 5, and 6 to the right of the decimal point have positional weights of 10^{-1} (0.1), 10^{-2} (0.01), and 10^{-3} (0.001), respectively.

The make-up of **(123.456 _{10})** using the digit’s relative positional weights is explained as follows:

The concept of positional notation to represent the relative weight of each decimal digit can be applied to other numbering systems. However, each numbering system uses a different base or a **multiplier** value. For example, the Octal uses a base-8 numbering system, and each positional step increases or decreases the weight by eight (8) times depending on the step direction. Likewise, in binary numbers, each binary digit or bit has a weight difference of two (2) times from the adjacent bit.

### Binary Fractions

The binary number uses a **base-2** numbering system and each binary digit (bit) has two options to represent its value and those are “0” & “1”. Like a decimal digit, each binary digit (bit) has a positional weight associated with it relative to the binary point (decimal point in case of a decimal digit). The weight of binary digits increases by two (2) times for every digit step upon moving from right to left. Moreover, the unsigned binary numbers can also have fractional numbers i.e. right to the binary point. The weight of binary digits, representing fractional numbers, decreases by two times for each step when moving to the right of the binary point. This means that binary digits have a positional weight of **2 ^{0}, 2^{1}, 2^{2}**,

**etc.**starting from the immediate left of the binary point i.e. position numbers of 0, 1, 2, etc., respectively. Likewise, the binary digits have a positional weight of

**2**starting from the immediate right of the binary point.

^{-1}, 2^{-2}, 2^{-3}, etc.The relative positional weights of binary digits are explained further as under:

Considering a binary fraction of **0.1101 _{2},** the positional weight of each binary digit or bit, constituting the binary fraction, is considered to make up its decimal equivalent. This is illustrated below:

The binary fraction of **0.1101 _{2 }**gives an equivalent decimal fraction of

**0.8125**

_{10}.### Binary Fraction Examples

The following binary fractions are converted into their equivalent decimal fractions by applying the above-given method.

It is seen from above that the bits of the binary fraction have a weight that decreases two (2) times with each positional step to the right or, alternatively, the weight becomes half (1/2 times) in terms of decimal equivalent.

### Conversion from Decimal to Binary Fraction

In order to convert a decimal fraction to its binary equivalent, the method used before for converting decimal to binary is applied. However, instead of dividing repeatedly by two (2), multiplication is applied for the fraction part.

The decimal number consisting of an integer and fractional part requires the conversion of each part separately. The integer part requires a repeated-division-by-2 method whereas repeated-multiplication-by-2 for the fraction part.

The decimal to binary conversion method, discussed before, is applied to the integer part that constitutes positive weights only. The integer part of a decimal number is repeatedly divided by two (2) whilst noting the remainders in reverse order (LSB to MSB) until the divided decimal value becomes “0”. This is illustrated below by converting **238 _{10}** into its binary equivalent.

Hence, the binary equivalent of **238 _{10}** consisting of an integer part only is

**11101110**

_{2}.Likewise, the binary equivalent of a decimal number’s fractional part is found by repeated-multiplication-by-2 and noting the down the carries in forwarding order until the fractional part becomes equal to “0”. The given decimal fraction, which will be obviously less than 1, is multiplied by two (2) resulting in a value that will be either greater or less than one (1). If the multiplication results in a value less than one (1) then there is no carry forward i.e. “0” and the multiplication process is repeated noting “0”s until the result becomes equal or greater than one. The multiplication resulting in a value greater than or equal to one (1), produces a carry forward i.e. “1” and the multiplication process is repeated on its fraction part only (for cases where multiplication results in a value greater than one only). In case, the value becomes equal to one (1) then no further multiplication is applied.

In some cases, the repeated multiplication may not seem to converge to a solution i.e. producing an exact one or resulting fraction equal to “0”. In such cases, the fractional numbers have infinite length, and multiplications or number bits are limited to acquire the desired degree of accuracy.

### Decimal to Binary Fraction Examples

The following examples of decimal to binary conversions are given to explain the aforementioned method.

The binary equivalent of **0.625 _{10}** is

**0.101**Similarly, a mixed decimal number

_{2}.**(43.375**can be converted to its binary equivalent as shown below:

_{10})Thus, a binary equivalent of a mixed decimal number **(43.375 _{10})** is

**101011.011**

_{2.}### Conclusion

- The binary numbers use a base-2 numbering system and, as such, the weight of each binary digit (bit) is given by 2
^{n}where “n” represents the position of that bit relative to the binary point. - The bits to the left of binary point (.) have positions in positive sequence i.e. 0, 1, 2, 3, etc. Whereas, to the right have positions in negative sequence i.e. -1, -2, -3, -4, etc. which constitute a binary fraction.
- For the positive sequence positions, the weight of each bit increases by two times for each increasing position step. Whilst, for negative sequence positions (binary fraction), the weight of each bit decreases by two times for each decreasing position step.
- The binary to decimal conversion is obtained by obtaining the weighted sum of the binary number. The weight of each bit multiplied by its value accounts for an equivalent decimal value.
- The decimal numbers with fractions are split into two parts in order to convert them to equivalent binary fraction numbers. The decimal number to the left of the decimal point is converted to binary by repeatedly dividing by 2 and noting down the remainder(s) until the dividend becomes “0”. Whilst, the number to the right of the decimal point, is converted to an equivalent binary by repeatedly multiplying by 2. For each multiplication, record the digit that appears on the left of the decimal point which will be either “0” or “1”. The process is repeated until the fraction part becomes equal to “0”.
- The conversion of decimal fraction part may lead to an ever-ending sequence because of the infinite fraction value. In such a case, the result is limited to a required number of fraction bits depending on the required degree of accuracy.