Uploaded by Eyob Solomon

Chapter 3

advertisement
Chapter Three
3. Data representation and computer arithmetic
3.1 Units of Data Measurement and Representation
This section discusses how data is represented in the computer system. It also deals with measuring
units of the size of memory and storage devices.
Digital computers store data using two state components. With two such states, we can represent
exactly two different values. These two values correspond to the two digits used by the binary
number system. As such, the computer employs the binary number system. The binary number
system works just like the decimal number system, with two exceptions: the binary number system
allows only the values 0 and 1 (rather than 0- 9), and the binary number system uses powers of
two rather than powers of ten.
UNITS ON DATA MESURMENT
Bits, Bytes, KB, MB
A bit (short for binary digit) is the smallest unit of data; it represents one binary digit (0 or 1).
However, computers usually do not operate on single bits, rather they store and manipulate a fixed
number of bits. Most often, the smallest unit or number of bits a computer works with is eight bits.
These eight bits make up a byte. A byte is a group of eight bits that usually make up a single
character - letter, number, or special character. Most coding standards use eight bits, and the eight
bits represent a single character, such as the letter “A” or the number “7”. Thus, the computer can
store and manipulate an individual byte (a single character) or a group of bytes (several characters,
a word) at a time. These individual bytes, or groups of bytes, form the basic unit of memory. The
memory size can be measured in Kilobytes (KB), Megabytes (MB), Gigabytes (GB), etc. The
common units are shown in the following table:
Unit
Equivalent Quantity
1 Byte
8 bits =1 character
1 Kilobyte (KB)
1 Megabyte (MB)
210 =1,024 bytes
220 = 1,048,576 bytes
1 Gigabyte (GB )
230 = 1,073,741,824 bytes
1 Terabyte (TB)
240 =1,099,511,627,776 bytes
UNITS OF DATA REPRESENTATION
 When data is stored, processed or communicated within the computer system, it is packed in
units;
 Arranged from the smallest to the largest, the units are called bit, byte and word;
 These units are based on the binary number system;
1
BIT
 Bits are the smallest units and can convey only two possible states 0 or 1;
 bit stands for binary digits;
 A bit is a single element in the computer, on a disk that stands for either “ON” indicating 1 or
“OFF” indicating 0;
 In the computer “ON” is represented by the existence of current and “OFF” is represented by
the non existence of current
 On a magnetic disk, the same information is stored by changing the polarity or magnetized
particles on the disk’s surface;
BYTE
 Bits can be organized into large units to make them represent more and meaningful
information;
 This large unit is called a byte and is the basic “unit of data representation” in a computer
system;
 The commonly used byte contains 8 bits;
 Since each bit has two states and there are 8 bits in a byte, the total amount of data that can be
represented is 28 or 256 possible combinations;
 Each byte can represent a character(a character is either a letter, a number or a special symbol
such as +,-,?,*, $, etc
 A byte is then used as a unit of measurement in the computer memory, processing unit, external
storage and during communication;
 If the computer memory is 524288 byte, this is expressed in short by saying 512KB, where KB
stands for kilobyte.
 1 Kilobyte(1KB) is 210 or 1024 bytes
 1 Megabyte(MB) is 220 bytes or 210 kilobytes
 1 Gigabyte(GB) is 230 bytes or 220 kilobytes or 210 megabytes
WORD
 Word refers the number of bits that a computer process at a time or a transmission media
transmits at a time
 Although bytes can store or transmit information, the process can even be faster if more than
one byte is processed at a once;
 A combination of bytes, then form a “word”
 A word can contain one, two, three or four bytes based on the capacity of the computer;
 Word length is usually given in bits
 We say that a computer is an 8-bits, a 16 bit, a 32 bit or a 64 bit computer to indicate that the
amount of data it can process at a time;
 The large the word length a computer has the more powerful and faster it is.
3.2 Computer Arithmetic
Number systems
There are different number systems. Some of are:
 Decimal number systems
 Binary number systems
2






 Octal number systems
 Hexadecimal number systems
Decimal number systems (base 10)
It is the common and widely used number system
It uses 10 symbols to represent or count things
Probably it was invented because we have 10 fingers with which we count and add.
For numbers greater than 9 it uses the symbols 0-9 to represent the number example 10 which is a
combination of 1 and 0 and so on.
Binary number system (base 2)
What if we had only two fingers we might use 0,and 1 and for numbers greater than 1 we might
use 10 and so on.
It uses 2 symbols 0,and 1 for rest it represents them in terms of 0 and 1 example 2 as 10 and so on.
Ex
0
1
10
11
100
101
110
111
Etc
Octal number System (base 8) (Oct)
 Again what would happened if we had only 8 fingers off course we would have used the 8 symbols
(0-7) and for numbers greater than we would represented them in terms of the first 8 symbols
example for 8,10 and so on.
 It uses 8 symbols 0-7 to represent numbers
Ex.
0
10
20
30
40
50
60
70
100
1
11
21
31
"
"
"
"
2
12
22
32
"
"
"
"
3
13
23
33
"
"
"
"
4
14
24
34
"
"
"
"
5
15
25
35
"
"
"
"
6
16
26
36
"
"
"
"
7
17
27
37
47
57
67
77
When we compare the octal with the decimal 0-7 in octal is the same as 0-7 in decimal but 10 in
octal is not the same as 10 in decimal because 10 in octal holds the position of 8 in decimal, off
course 10 in octal is the same as 8 in decimal.
Hexadecimal number system (16) (hex)
 Suppose we had 16 fingers instead of 10 in case of 10 fingers they invented new symbols
until they exhausted all their fingers. Now they would have to invent new symbols because
there would have be some more fingers left un represented . These extra symbols are usually
represented by the letters at the beginning of the English alphabet.
3
 It uses 16 symbols to represent numbers. But for the numbers greater than 15 they
represented in terms of the 16 symbols example 16 as 10 and so on.
 When we compare the hexadecimal with decimal 0-9 in hexadecimal is the same as 0-9 in
decimal but 10 in hexadecimal is not the same as 10 in decimal, off course 10 in hexadecimal is
equal to 16 in decimal because it holds the position of 16 in decimal. Example
0
1
2
3
4
5
6
7
8
9
A
B
C
15
16
17
1F
20
30
31
Conversion from one Base to Another
The values that members have within given number systems are largely determined by their
positional notation. Positional notation means that the position of one symbol relative to other
symbols in a given number system determines the value of that symbol. For example, these
symbols 1 & 7 can represent either 1 or 7 or 71 depending upon their relative position to one
another.
The decimal number 135 may be expanded as:
(135) 10 = 1*102+3*101+5*100
 The subscript 10 is used to indicate that 135 is a base 10 number.
 The number 10 in binary is not the same as 10 in decimal because the value of 1 in the binary is
not the same as the value of the 1 in the decimal.
 The binary number 1101 may be expanded as
(1101)2 = 1*23+1*22+0*21+1*20
= (1*8)+(1*4)+(0*2)+(1*1)
= 8+4+0+1
= (13)10
*A number X1 X2 X3 …Xn is base M can be expanded as
(X0 X1 X2 X3 …Xn)m=X1*mn-1+X2*mn-2+X3*mn-3+ …Xi*mn-i+Xn*m0
Conversion from decimal (base 10) to other base (base M)
(Base 10……….Base M)
To convert a decimal number X to a number in base m, divide X by m, find the remainder, again
divide the result by M, find the remainder, continue until the result is 0 . And concatenate (collect)
the remainders starting from the last up to the first.
Ex.1 Convert (56)10 to base (binary) X=56 M=2
(56)10 =(111000)2
EX.2 Convert (78)10 to base 8 (Octal)
(78)10=(116)8
EX. 3. Convert (30)10 to base 16 (hexadecimal)
(30)10=(1E)16
4
Convert (16)10 to base 16 (hexadecimal)
(16)10=(A)16
Conversion from base M to base 10 (decimal)
To convert a number X consists of digits X1 X2 X3 …Xn in base m to decimal, simply expand
the number with base M. That is
(X1X2X3…Xn)m =X1*mn-1+X2*mn-2 +X3*mn-3+ …. + Xi*mn-i+… Xn-1*m1+Xn*m0
=(Y)10
Example 1. Convert (1001001)2 to decimal
=73
2. convert (234)8 to decimal
=156
3. convert (101)8 to decimal
=65
4. convert (A1B)16 to decimal
= 2587
5. covert (101)16 to decimal
=257
Conversion from binary (base2) to Octal (base 8) or hexadecimal (base16) and vice versa
To convert a number in binary to octal group three binary digits together starting from the last
digit (right and if there are no enough digits add zeros in front (left) and find the corresponding
Octal of each group.
Example. Convert 1001001 to octal
1001001=001,001,001
= (111)8
convert 101101001 to octal
101101001=101,101,001
=(551)8
To convert binary to hexadecimal group four binary digits together starting from right and if
there are no enough digits add zeros at the left.
EX. Convert 111100100 to hexadecimal
111100100=0001,1110,0100
= 1
14 4
= (1E4)16
To convert from Octal to binary , convert each octal digit to its equivalent 3 bit binary starting
from right.
EX. Convert (675)8 to binary
(675)8 =110 111 101
=(110111101)2
Convert (231)8 to binary
(231)8 = 010 011 001
=(10011001)2
5
To convert from Hexadecimal to binary convert each hex. Digit to its equivalent 4-bit binary
starting from right.
Ex. Convert (234)16 to binary
(234)16 =0010 0011 0100
= (1000110100)2
Convert 2AC to binary
(2AC)16 =0010 1010 1100
=(1010101100)2
Conversion from Octal to hexadecimal and Vice versa
To convert from Octal to hexadecimal, first we have to convert to binary and the binary to
hexadecimal. To convert from hexadecimal to Octal, first we have to convert to binary and then
the binary to Octal.
EX.1. Convert (235)8 to hexadecimal
(235)8=010 011 101
=0000 1001 1101
= 0 9 13
=(9D)16
Convert 1A to Octal
(1A)16=0001 1010
=000 011 010
=0 3 2
=(32)8
Summary of conversion from One base to another base
From base
2
10
2
8
2
16
8
10
16
10
8
16
To base
10
2
8
2
16
2
10
8
10
16
16
8
Method
Expand binary number in powers of 2
Factor the decimal number by 2
Group 3 binary digits together
Each Octal digit is converted to 3 binary digits
Group 4 binary digits together
Each hexadecimal digit is converted to 4 binary digits
Go from 8…….2…….10
Go from 10 … ..2……..8
Go from 16 …….2…….10
Go from 10 …….2…….16
Go from 8 …….2…….16
Go from 16 …….2…….8
6
Download