0% found this document useful (0 votes)
22 views

5 - Python - Number System

The document discusses different number systems including binary, octal, and hexadecimal. It provides details on how to convert between decimal numbers and these other systems by methods like repeated division or subtraction. Examples are given to demonstrate converting specific decimal numbers to binary, octal, and hexadecimal representations.

Uploaded by

niha.narikella
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views

5 - Python - Number System

The document discusses different number systems including binary, octal, and hexadecimal. It provides details on how to convert between decimal numbers and these other systems by methods like repeated division or subtraction. Examples are given to demonstrate converting specific decimal numbers to binary, octal, and hexadecimal representations.

Uploaded by

niha.narikella
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Python Basics -Number

System
CSIR12 Introduction to computer Programming
NIT Trichy
Binary, octal, hexadecimal numbers
• The decimal system is the most widely used number system.
However, computers only understand binary.
• Binary, octal and hexadecimal number systems are closely related.

3/25/24 NIT Trichy 2


Decimal Number
• What does 5634 represents?
• Expanding 5634,
5 x 103 = 5000
+ 6 x 102 = 600
+ 3 x 101 = 30
+ 4 x 100 = 4 -> 5634
• The 10 in the above expansion is called radix or base
• Digits of decimal numbers are 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, that is, there are 10
unique digits called base or radix.
• Radix or base of decimal number is 10

3/25/24 NIT Trichy 3


Binary
• Binary numbers are made of binary digits (bits) 0 and 1.
• The radix of binary is 2.
• Group of 8 bits are called byte (11001001)2
• Group of 4 bits are called nibble (1000)2

3/25/24 NIT Trichy 4


Octal Numbers
• Octal numbers are made of octal digits 0, 1, 2, 3, 4, 5, 6, 7.
• The radix number is 8.

3/25/24 NIT Trichy 5


Hexadecimal Number
• Hexadecimal numbers are made of digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A,
B, C, D, E, F (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15).
• The radix number is 16.

3/25/24 NIT Trichy 6


Decimal to binary
• Divide the number repeatedly by 2 until the quotient becomes 0.
• The remainders from bottom to top represents binary equivalent

3/25/24 NIT Trichy 7


Decimal to binary - Repeated Division method
344
344 / 2 = 172 remainder = 0
172 / 2 = 86 remainder = 0
86 / 2 = 43 remainder = 0
43 / 2 = 21 remainder = 1
21 / 2 = 10 remainder = 1
10 / 2 = 5 remainder = 0
5 / 2 = 2 remainder = 1
2 / 2 = 1 remainder = 0
1 / 2 = 0 remainder = 1
Binary Representation is 101011000
3/25/24 NIT Trichy 8
Decimal to binary method 2
• Subtract the largest power of 2 that gives a positive result and record
the power.
• Repeat, subtracting from the prior result, until the reminder is zero.
• Place 1’s in the positions in the binary result corresponding to the
power recorded; in all other positions place 0.

3/25/24 NIT Trichy 9


Method 2
Example 625
625 – 512 (29) = 113 -> 9
113 – 64 (26) = 49 -> 6
49 – 32 (25) = 17 -> 5
17 – 16 (24) = 1 -> 4
1 – 1 (20) = 0 -> 0
The Binary representation is 1001110001

3/25/24 NIT Trichy 10


Try using method 2 convert decimal to binary
• 344
• 1450

3/25/24 NIT Trichy 11


Method 2
Example 344
344 – 256 (28) = 88 -> 8
88 – 64 (26) = 24 -> 6
24 – 16 (24) = 8 -> 4
8 – 8 (23) = 0 -> 3
The Binary representation is 101011000

3/25/24 NIT Trichy 12


Method 2
Example 1450
1450 – 1024 (210) = 426 -> 10
426 – 256 (28) = 170 -> 8
170 – 128 (27) = 42 -> 7
42 – 32 (25) = 10 -> 5
10 – 8 (23) = 2 -> 3
2 – 2 (21) = 0 -> 1
The Binary representation is 10110101010

3/25/24 NIT Trichy 13


Convert Fractional part to binary
• Repeatedly multiply the fraction by radix (2) and save the integer
digits of the result.
• The new radix fraction digits are the integer numbers in computed
order.

3/25/24 NIT Trichy 14


Fractional part
Example 344.6
Binary representation of Integer Part: 101011000
0.6 x 2 = 1.2 -> 1
0.2 x 2 = 0.4 -> 0
0.4 x 2 = 0.8 -> 0
0.8 x 2 = 1.6 -> 1
0.6 x 2 = 1.2 -> 1
Binary Representation of fraction part: 10011
(344.6)10 = (101011000.10011)2

3/25/24 NIT Trichy 15


Convert binary to decimal
To Convert to decimal, use decimal arithmetic to sum the weighted
powers of two:
Converting (11010)2 to N10:
N10 = 1 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 0 x 20
= 26

3/25/24 NIT Trichy 16


Fractional part binary to decimal – Method 1
• Divide each digit from right side of radix point till the end by
21, 22, 23, … respectively.
• Add all the result from previous step.
• The result is the equivalent fractional decimal number.

3/25/24 NIT Trichy 17


Example Binary to Decimal Fractional part
101011000.10011

! ! ! ! !
1x +0x +0x +1x +1x
"! "" "# "$ "%

= 0.5 + 0 + 0 + 0.0625 + 0.03125

= 0.59375

3/25/24 NIT Trichy 18


Fractional part binary to decimal – Method 2
• Start from the right with the total of 0.
• Take your current total, add the current digit and divide
the result by 2.
• Continue until there are no more digits left.

3/25/24 NIT Trichy 19


Example
101011000.10011
(Start from right)
!
(1 + 0 ) = 0.5
"
!
(1 + 0.5 ) = 0.75
"
!
(0 + 0.75 ) = 0.375
"
!
(0 + 0.375 ) = 0.1875
"
!
(1 + 0.1875 ) = 0.59375
"

Fraction part decimal value is 0.59375


3/25/24 NIT Trichy 20
Decimal to octal
• Divide the number repeatedly by 8 until the quotient becomes 0.
• The remainders from bottom to top represents octal equivalent

3/25/24 NIT Trichy 21


Example
344

344 / 8 = 43 remainder = 0
43 / 8 = 5 remainder = 3
5 / 8 = 0 remainder = 5

Octal Representation is (530)8

3/25/24 NIT Trichy 22


Fractional part
• Multiply the fractional part repeatedly by 8 until it becomes 0.
• If the fractional part does not become 0, stop after a certain number
of steps.
• The resultant integer part from top to bottom represents the octal
equivalent of the fractional part.

3/25/24 NIT Trichy 23


Example
344.6
Integer part octal representation is 530
fractional part
0.6 * 8 = 4.8
0.8 * 8 = 6.4
0.4 * 8 = 3.2
0.2 * 8 = 1.6
0.6 * 8 = 4.8
The Octal representation of 344.6 is 530.46314

3/25/24 NIT Trichy 24


Decimal to hexadecimal
• Divide the number repeatedly by 16 until the quotient
becomes 0.
• Remainders from bottom to top represents hexadecimal
number.
Example: (100)10
100 / 16 = 6 remainder = 4
6 / 16 = 0 remainder = 6
Hexadecimal representation is 64

3/25/24 NIT Trichy 25


Try
• 344
• 910

3/25/24 NIT Trichy 26


Example
(344)10

344 / 16 = 21 remainder = 8
21 / 16 = 1 remainder = 5
1 / 16 = 0 remainder = 1

Hexadecimal representation is (158)16

3/25/24 NIT Trichy 27


Example
(910)10

910 / 16 = 56 remainder = 14 or E
56 / 16 = 3 remainder = 8
3 / 16 = 0 remainder = 3

Hexadecimal representation is (38E)16

3/25/24 NIT Trichy 28


Python program to convert decimal (Integer)
to other number systems
Example:
dec = 344

print("The decimal value of", dec, "is:")


print(bin(dec), "in binary.")
print(oct(dec), "in octal.")
print(hex(dec), "in hexadecimal.")

3/25/24 NIT Trichy 29


Output
The decimal value of 344 is:
0b101011000 in binary.
0o530 in octal.
0x158 in hexadecimal.

3/25/24 NIT Trichy 30

You might also like