0% found this document useful (0 votes)
37 views76 pages

5 NumberSystems

This document discusses number systems and how computers represent data. It explains that computers use binary digits (bits) to store all forms of information as a universal format. Bits are the smallest unit of data that computers can process, taking a value of either 0 or 1. Groups of 8 bits are called a byte, which can represent one character. The document also describes common number systems like decimal, binary, octal and hexadecimal, and how to convert between them. It provides techniques for converting between binary, decimal, octal and hexadecimal representations.

Uploaded by

Kamran Saif
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
Download as ppt, pdf, or txt
0% found this document useful (0 votes)
37 views76 pages

5 NumberSystems

This document discusses number systems and how computers represent data. It explains that computers use binary digits (bits) to store all forms of information as a universal format. Bits are the smallest unit of data that computers can process, taking a value of either 0 or 1. Groups of 8 bits are called a byte, which can represent one character. The document also describes common number systems like decimal, binary, octal and hexadecimal, and how to convert between them. It provides techniques for converting between binary, decimal, octal and hexadecimal representations.

Uploaded by

Kamran Saif
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1/ 76

Number Systems

Lecture 5
What is data?
Data is information that has been translated
into a form that is more convenient to process

As information take different forms, the most


efficient way is to represent all forms of
information using a universal format.
Data Types

Multimedia

Word Engineering Image Audio play Video display


processing programs processing program programs
programs programs
Information coding and decoding
• Human senses deal with a variety of information
(signals).
• Input devices of computer translates these
information into electrical signals, why electrical?.
• Electrical signals are then translated into universal
format (0s,1s), this is known as coding.
• After processing, output devices transform back
data into their original form, this is known as
decoding
How Computers Represent Data
• Bits and bytes
– Binary numbers are made of bits
– Bit represents a switch
– A byte is 8 bits
– Byte represents one character

5A-6
Bit Pattern
• A bit is the smallest unit of data that the computer
deals with.
• a bit can take two values (0 or 1).
• A two-state electrical switch (transistor) is used to
represent a bit (on state →1, off state →0).
• To store 16 bits you need 16 switches, to store
million bits you need million switches.
• In computer memory data are stored as blocks of
bits (bit-patterns), the length of bit-patterns is the
number of bits in the bit-patterns.
• A bit-pattern of 8 bits length is called a byte
Digital
• Digital = discrete
– Binary codes (example: BCD) Decimal BCD
Symbols Code
– Decimal digits 0-9 0 0000
1 0001
• Binary codes 2 0010
3 0011
– Represent symbols using 4 0100
binary digits (bits) 5 0101
6 0110
• Digital computers: 7 0111
– I/O is digital 8 1000
• ASCII, decimal, etc. 9 1001
– Internal representation is
binary
• Process information in bits
Common Number Systems
Used by Used in
System Base Symbols humans? computers?
Decimal 10 0, 1, … 9 Yes No
Binary 2 0, 1 No Yes
Octal 8 0, 1, … 7 No No
Hexa- 16 0, 1, … 9, No No
decimal A, B, … F
Quantities/Counting (1 of 3)
Hexa-
Decimal Binary Octal decimal
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
p. 33
Quantities/Counting (2 of 3)
Hexa-
Decimal Binary Octal decimal
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
Quantities/Counting (3 of 3)
Hexa-
Decimal Binary Octal decimal
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
20 10100 24 14
21 10101 25 15
22 10110 26 16
Etc.
23 10111 27 17
Conversion Among Bases
• The possibilities:

Decimal Octal

Binary
Hexadecimal

pp. 40-46
The basics: Binary numbers
• Bases we will use
– Binary: Base 2
– Octal: Base 8
– Decimal: Base 10
– Hexadecimal: Base 16
• Positional number system
– 1012= 1×22 + 0×21 + 1×20
– 638 = 6×81 + 3×80
– A116= 10×161 + 1×160
Quick Example

2510 = 110012 = 318 = 1916


Base
Binary Notation
• Is a way to write binary numbers
• In this way we assign a symbol for multiples of
successive bits that makes the binary number
• We are going to learn two binary notation
systems:
– Octal notation: a symbol for 3 bits.
– Hexadecimal notation: a symbol for 4 bits.
Binary → hex/decimal/octal
conversion
• Conversion from binary to octal/hex
– Binary: 10011110001
– Octal: 10 | 011 | 110 | 001=23618
– Hex: 100 | 1111 | 0001=4F116

• Conversion from binary to decimal


– 1012= 1×22 + 0×21 + 1×20 = 510
– 63.48 = 6×81 + 3×80 + 4×8–1 = 51.510
– A116= 10×161 + 1×160 = 16110
Decimal to Decimal (just for fun)

Decimal Octal

Binary Hexadecimal

Next slide…
Weight

12510 => 5 x 100 = 5


2 x 101 = 20
1 x 102 = 100
125

Base
Binary to Decimal

Decimal Octal

Binary Hexadecimal
Binary to Decimal
• Technique
– Multiply each bit by 2n, where n is the “weight” of
the bit
– The weight is the position of the bit, starting from
0 on the right
– Add the results
Example
Bit “0”

1010112 => 1 x 20 = 1
1 x 21 = 2
0 x 22 = 0
1 x 23 = 8
0 x 24 = 0
1 x 25 = 32
4310
Octal to Decimal

Decimal Octal

Binary Hexadecimal
Octal to Decimal
• Technique
– Multiply each bit by 8n, where n is the “weight” of
the bit
– The weight is the position of the bit, starting from
0 on the right
– Add the results
Example

7248 => 4 x 80 = 4
2 x 81 = 16
7 x 82 = 448
46810
Hexadecimal to Decimal

Decimal Octal

Binary Hexadecimal
Hexadecimal to Decimal
• Technique
– Multiply each bit by 16n, where n is the “weight”
of the bit
– The weight is the position of the bit, starting from
0 on the right
– Add the results
Example

ABC16 => C x 160 = 12 x 1 = 12


B x 161 = 11 x 16 = 176
A x 162 = 10 x 256 = 2560
274810
Decimal→ binary/octal/hex
conversion

• Why does this work?


– N=5610=1110002
– Q=N/2=56/2=111000/2=11100 remainder 0
• Each successive divide liberates an LSB (least
significant bit)
Decimal to Binary

Decimal Octal

Binary Hexadecimal
Decimal to Binary
• Technique
– Divide by two, keep track of the remainder
– First remainder is bit 0 (LSB, least-significant bit)
– Second remainder is bit 1
– Etc.
Example
12510 = ?2 2 125
62 1
2
31 0
2
15 1
2
7 1
2
3 1
2
1 1
2
0 1

12510 = 11111012
Octal to Binary

Decimal Octal

Binary Hexadecimal
Octal to Binary
• Technique
– Convert each octal digit to a 3-bit equivalent
binary representation
Example
7058 = ?2

7 0 5

111 000 101

7058 = 1110001012
Hexadecimal to Binary

Decimal Octal

Binary Hexadecimal
Hexadecimal to Binary
• Technique
– Convert each hexadecimal digit to a 4-bit
equivalent binary representation
Example
10AF16 = ?2

1 0 A F

0001 0000 1010 1111

10AF16 = 00010000101011112
Decimal to Octal

Decimal Octal

Binary Hexadecimal
Decimal to Octal
• Technique
– Divide by 8
– Keep track of the remainder
Example
123410 = ?8

8 1234
8 154 2
8 19 2
8 2 3
0 2

123410 = 23228
Decimal to Hexadecimal

Decimal Octal

Binary Hexadecimal
Decimal to Hexadecimal
• Technique
– Divide by 16
– Keep track of the remainder
Example
123410 = ?16

16 1234
16 77 2
16 4 13 = D
0 4

123410 = 4D216
Binary to Octal

Decimal Octal

Binary Hexadecimal
Binary to Octal
• Technique
– Group bits in threes, starting on right
– Convert to octal digits
Example
10110101112 = ?8

1 011 010 111

1 3 2 7

10110101112 = 13278
Binary to Hexadecimal

Decimal Octal

Binary Hexadecimal
Binary to Hexadecimal
• Technique
– Group bits in fours, starting on right
– Convert to hexadecimal digits
Example
10101110112 = ?16

10 1011 1011

2 B B

10101110112 = 2BB16
Octal to Hexadecimal

Decimal Octal

Binary Hexadecimal
Octal to Hexadecimal
• Technique
– Use binary as an intermediary
Example
10768 = ?16

1 0 7 6

001 000 111 110

2 3 E

10768 = 23E16
Hexadecimal to Octal

Decimal Octal

Binary Hexadecimal
Hexadecimal to Octal
• Technique
– Use binary as an intermediary
Example
1F0C16 = ?8

1 F 0 C

0001 1111 0000 1100

1 7 4 1 4

1F0C16 = 174148
Exercise – Convert ...
Hexa-
Decimal Binary Octal decimal
33
1110101
703
1AF
Don’t use a calculator!

Skip answer Answer


Exercise – Convert …
Answer

Hexa-
Decimal Binary Octal decimal
33 100001 41 21
117 1110101 165 75
451 111000011 703 1C3
431 110101111 657 1AF
Representing Data:
1. Text Representation
• Written text is made of alphabetical symbols
(letters). For example, in English there are 26
uppercase and 26 lowercase symbols.
• Each of those symbols is represented by
distinctive bit-pattern (code), ex table A1, P337.
• Once alphabetical symbols are represented by a
bit-pattern, any word that is made of
combination of letters can be represented.
Representation of word “BYTE”

Ex: 34 Page13
Code systems for text representation
• There are about 5 code systems used to
represent alphabetical symbols:
1. ASCII (American Standard Code for Information
Interchange)
2. Extended ASCII
3. EBCDIC (Extended Coded Decimal Interchange
Code)
4. Unicode (Universal Code)
5. ISO (International Organization for Standardization)
(1) ASCII

• In ASCII codes each code is made of 7 bits.


• Number of possible codes M = 27 = 128 codes.
• Bit-patterns ranging from 0000000 to 1111111
• The first pattern represents (null character)
• The last pattern represents (delete character)
• Appendix A
(2) Extended ASCII
• Is invented to make the bit-pattern length
equal to 8 bits (Byte), by adding a bit to the
left of the ASCII code representation.
Ex. If ASCII code is 1111111 the extended
ASCII code is 01111111.
• Extended ASCII is not used because it is not
standardized as each manufacturer has
different 8-bits system.
(3) EBCDIC
• Uses 8 bit patterns → # of codes = 28=256
• Just used in IBM mainframe (system)
(4) Unicode
• To represent more languages’ character beside
English, Unicode is invented.
• Uses 16 bit pattern → # of codes = 216=65536
enough to represent all world’s languages.
• Some codes are allocated for geographical and
special symbols.
• Java uses Unicode, Microsoft uses the first 256
symbols
• Appendix B
(5) ISO
• ISO uses 32 bit patterns
→ # of codes = 232=4,294,967,296 symbols
enough to represent all world’s symbols.
From Bit & Bytes to ASCII
• Bytes can represent any
collection of items using a
“look-up table” approach
• ASCII is used to represent
characters

ASCII
American Standard Code for Information Interchange
http://en.wikipedia.org/wiki/ASCII
ASCII
• It is an acronym for the American Standard Code for
Information Interchange.
• It is a standard seven-bit code that was first
proposed by the American National Standards
Institute or ANSI in 1963, and finalized in 1968 as
ANSI Standard X3.4.
• The purpose of ASCII was to provide a standard to
code various symbols ( visible and invisible symbols)
ASCII
• In the ASCII character set, each binary value
between 0 and 127 represents a specific
character.
• Most computers extend the ASCII character
set to use the full range of 256 characters
available in a byte. The upper 128 characters
handle special things like accented characters
from common foreign languages.
• In general, ASCII works by assigning standard
numeric values to letters, numbers,
punctuation marks and other characters such
as control codes.
• An uppercase "A," for example, is represented
by the decimal number 65."
Bytes: ASCII

• By looking at the ASCII table, you can clearly see a


one-to-one correspondence between each character
and the ASCII code used.
• For example, 32 is the ASCII code for a space.
• We could expand these decimal numbers out to
binary numbers (so 32 = 00100000), if we wanted to
be technically correct -- that is how the computer
really deals with things.
Bytes: ASCII

• Computers store text documents, both on disk and in


memory, using these ASCII codes.
• For example, if you use Notepad in Windows XP/2000 to
create a text file containing the words, "Four score and seven
years ago," Notepad would use 1 byte of memory per
character (including 1 byte for each space character between
the words -- ASCII character 32).

• When Notepad stores the sentence in a file on disk, the file


will also contain 1 byte per character and per space.
• Binary number is usually displayed as Hexadecimal to save
display space.
Bytes: ASCII

• If you were to look at the file as a computer


looks at it, you would find that each byte
contains not a letter but a number -- the
number is the ASCII code corresponding to the
character (see below). So on disk, the numbers
for the file look like this:
• Fourandseven
• 70 111 117 114 32 97 110 100 32 115 101 118
101 110
• Externally, it appears that human beings will use
natural languages symbols to communicate with
computer.
• But internally, computer will convert everything into
binary data.
• Then process all information in binary world.
• Finally, computer will convert binary information to
human understandable languages.
• When you type the letter A, the hardware
logic built into the keyboard automatically
translates that character into the ASCII code
65, which is then sent to the computer.
Similarly, when the computer sends the ASCII
code 65 to the screen, the letter A appears.
ASCII
 ASCII code assigns a number
for each English character
 Each letter is assigned a
number from 0-127
 Ex: An uppercase ‘m’ has
the ASCII code of 77
 By 2007, ASCII was the most
commonly used character
encoding program on the
internet

You might also like