Data Representation
Data Representation
Inside the computer, data is represented by storage cells, which are either electronically charged
or discharged.
Examples;
In RAM, the cells can be charged and discharged at will, and this can be used to store
different data items. The charged state of the cell can be represented by 1 (or ON), while the
uncharged state by 0 (or OFF).
In ROM, the cells are permanently set to one state.
A Transistor may be conducting or non-conducting.
A Magnetic material may be magnetized in one direction or the other.
A wire may or may not be carrying a current.
The Main memory of the computer can be considered as a collection of thousands of storage
cells, each capable of representing a binary digit.
DATA TYPES.
Data is a term used to describe a set of facts. A single fact is known as Datum.
Numbers:
Note. A whole number is Real if it is written with a decimal point, e.g., 25 is an integer, but 25.0
is real.
Alphabetic data:
This is data made from combination of alphabetic characters, such as names, title, marital status,
e.g. “John”, “Prof.”, “Married”.
1
Data Representation
This is data made from combination of alphabetic characters, numerals and/or special characters.
Examples;
Exercise.
1. Explain the terms Numeric and Alphanumeric. Illustrate your answers with appropriate
examples.
THE BYTE.
The capacity of a computer memory can be measured in terms of Bits (individual memory cells),
Bytes (groups of cells or bits) or Words (arrangement of the bytes).
A Bit (Binary digit) is the number 0 or 1 in the representation of a value in binary notation.
The Byte is the most commonly used unit of measuring the capacity of a computer memory.
A Word is a group of bits that the computer recognizes and executes (processes) at a time.
To represent characters, the bits are combined together. The group of bits representing
characters can also be described as Location.
In a Character machine, a location has 6 bits that represents a Byte, while the Byte machines has
8 bits making up a byte.
2
Data Representation
24 bits = 4 bytes (1 Word) 32 bits = 4 bytes (1 Word)
The memory capacity can be expressed as 32k, 64k, 256k, etc. The ‘K’ is a constant used to
represent the Kilobyte, which is made up of 1,024 bytes.
Another unit that can be used to measure the memory is Megabyte (MB). MB is used to denote
(stand for / represent / indicate) a million bytes, i.e. 1024 K is equivalent to 1MB.
Note. Half of a byte is described as a NIBBLE. A Nibble can be made up of 3 bits, for
Character machines and 4 bits for the Byte machines.
Exercise.
1. Data in a computer is represented in one major form. Define the term “Data representation”
in a computer system.
2. Define the following terms:
(i). Bit.
(ii). Byte.
(iii). Character.
(iv). Word.
3. Explain the term “NIBBLES” as used in data representation in computers.
CODING OF DATA.
A computer can understand only one language consisting of two symbols, 0 & 1(Binary digits).
Since the computer cannot understand data represented in human languages (i.e. numerals 0 - 9,
alphabets A – Z, and special symbols such as +, -, /, *, etc), it became necessary to change the
data to binary form, a process known as Coding of data.
In other words, to make communication possible between computers and human beings, data
must be coded in the form that can be understood by the computer and the information supplied
by a computer (after processing) must be coded in the form that can be understood by the user.
The coding and decoding of data in a computer is done by the Input/Output devices.
Human readable
Human Computer works -OR-
message in CPU Code Machine readable
Input Code converted to CPU Code converted Code
Computer Code by Input devices to Output Code by
3
Data Representation
Output devices
Data representation – The representation of normal data in some type of coded form, such as
BCD, ASCII or EBCDIC.
NUMBER SYSTEMS.
The design and organization of a computer depends on the number system. The 4 number
systems are:-
Binary numbers are numbers to base 2, and use only two digits; 0 & 1.
Hexadecimal numbers are numbers to base 16 and there must be 16 digits. The sixteen symbols
used in the Hexadecimal system are; digits 0 to 9 & alphabets A to F.
Note. The Digit value & Positional value for each number system depend on the base of the
number system.
Powers of the base increase as we move to the left and decrease as we move to the right.
4
Data Representation
4th 3rd 2nd 1st 1st 2nd 3rd 4th 5th Position
.
103 102 101 100 10-1 10-2 10-3 10-4 10-5 Power base
.
1000 100 10 1 1/10 1/100 1/1000 1/10000 1/100000 Value
.
Decimal point.
Example,
Let us consider the number 8888. All the digits represent the same value of 8. However, the
positional values are the absolute values multiplied by 10 raised to the positional power.
Since the positional increment is a power of 10, the value 10 is known as the Base of the
number system.
5
Data Representation
Therefore, the Base of a number system is the value whose positional power is used to represent
another value. Therefore, in the decimal system, the base is 10.
Note. In the Decimal system, the position value of each digit in a number increases 10 times as
we move from right to left starting with the rightmost digit.
(i). 0.839
(ii). 342.85
6
Data Representation
BINARY NUMBER SYSTEM.
Binary is the representation of data by only 2 possible conditions (i.e. combinations of 1 & 0).
Binary system is a number system that uses only two digits; 0 & 1. It has a base of 2, and is
therefore called a Base-two system.
In the binary number system, the digits ‘1’ & ‘0’ are referred to as Bits (binary digits).
Exponential value 25 24 23 22 21 20
Integer value 32 16 8 4 2 0
It is clear that, the positional values of the numbers increase 2 times as we move from right to
left. This is because the base is 2.
Points.
Bit (Binary digit) – The digit 0 or 1 in the representation of a value in Binary notation.
Binary numbers are very important in the design, organization, and understanding of computers.
The Binary system is more convenient because the computer storage systems are based on a 2-
state principle (digits 1 & 0).
For example;
(i). Magnetic storage media use the magnetic principles to imitate the states of 1’s & 0’s.
A magnetized spot represents a 1, while the non-magnetized spot represents a 0.
(ii). The computer’s Internal memory uses magnetic polarity in one direction to represent a ‘1’
and in the reverse direction to represent a ‘0’.
(iii). The computer logical operations are also affected by pulse trains, where a pulse represents
a ‘1’ and no pulse represent a ‘0’.
In addition, the Binary code is used only for mathematical applications (it is not intended to
handle alphabetic data).
The position value of a digit increases to the left of the octal point in ascending powers of 8.
7
Data Representation
Complex binary numbers with several 1’s and 0’s can be conveniently handled in base 8. The
binary digits are combined into groups of 3 (three), and each group is used to represent an
individual octal digit.
Decimal Hexadecimal.
10 A
11 B
12 C
13 D
14 E
15 F
Each digit in the Hex number system has its place value expressed in terms of 16.
E.g. the value 12A0 can be expressed as:
8
Data Representation
= (1x20) (1x21) {(1x23)+(1x21)} 0
= 1 2 (8 + 2) 0
= 1 2 10 0
=12A016.
Note. The Hex system is very well suited for big computers such as IBM and microprocessors
with CPU chips such as INTEL 8085. This is because the Hex number system represents
information in short form.
Exercise I.
A __________________________ B ______________________________
C __________________________ D ______________________________
BASE CONVERSIONS.
Human beings normally work with the base 10 notation, i.e. all the data passed to go as computer
input is usually in decimal notation. Subsequently, the results of the computer operations are
communicated to the users in a form they can understand, i.e. in base 10 (decimal) notations.
The Base Conversion is therefore used to help computer users understand how data and
information is communicated between the computer and the user.
9
Data Representation
To convert a Decimal number (base 10) to a Binary number (base 2), the decimal number is
repeatedly divided by 2, until the number cannot be further divided by two. On each
division, the remainder is noted.
Then, the remainders are copied from the bottom Upwards to give the binary equivalent of
the decimal number.
2 121 REM
1
2 60
2 30 0
2 15 0
2 7 1 Copy
2 3 1
2 1 1
1 1
12110 11110012
Example 2: Convert the following decimal integers into their binary equivalents.
(i). 36
2 36 REM
2 018
2 9 0
2 4 1 Copy
2 2 0
2 247
1 0
2 123
1 1
2 61 12110 1001002
2 30
2 15 (ii). 247
2 7 REM
2 3
10
2 1
1
Data Representation
1
1
1
0 Copy
1
1
1
1
24710 111101112
Fractional numbers.
For a fractional number, the no. is divided into 2 parts; the whole number part & the
fraction part.
The whole no. is then converted to binary individually as shown above. The fraction part is
repetitively multiplied by 2, noting the complete units of two. This is done until the fraction
becomes a 0 or starts recurring.
The complete units of the fraction part are then copied downwards.
To convert a binary number to decimal system, the number in binary form is assigned
weighting factors (place values) for each digit.
11
Data Representation
The partial products (i.e. the product of each digit and its corresponding weight) are
obtained, and then added to give a decimal number equivalent of the binary number.
Explanation:
Note that the binary number 10110 has 5 digits. Starting with the rightmost digit, the Most
Significant Digit (MSD) is in the 5th position. So, it is multiplied by 24 & each digit on its
right will be half of it in its positional value. The products obtained are added together to
get the required decimal equivalent.
(i). 1011
Solution.
(ii). 11011
(iii). 110101
(iv). 111000101
Fractional numbers.
Points to Note.
(i). 2-11/21½
13
Data Representation
(ii). 5-21/521/25
(iii). 20 1 (any no. raised to the power of 0 is 1.)
(i). (0.111)2
To convert a Decimal number to its octal equivalent, divide the decimal number given
repeatedly by 8 until the quotient obtained is zero.
8 691 REM
3
8 86
8 10 6 Copy
8 1 2
1 1
14
Data Representation
Therefore, 69210 12638
(i). 785
8 785 REM
1
8 98
8 12 2 Copy
8 1 4
1 1
8 8159 REM
7
8 1019
8 127 3 Copy
8 15 7
8 1 7
1 1
Fractional numbers.
To convert decimal fractions into their equivalent octal fractions, the whole part of the
decimal number is repeatedly divided by 8.
The fractional part is repetitively multiplied by 8, noting the complete units of 8, until the
fractional part becomes zero or up to the required number of digits. The complete units are
then copied downwards.
Example 2: Convert the following decimal fractions to their equivalent octal fractions.
(i). 0.75
0.75 x 8 = 6.00
(Since the fractional part has become zero, there is no need to proceed further).
(ii). 0.21875
16
Data Representation
= (1x83) + (2x82) + (6x81) + (3x80)
Sum = 512 + 128 + 48 + 3
= 691
(i). 41
Sum = 32 + 1
= 33
(ii). 283
Sum = 128 + 64 + 3
= 195
= (4x81) + (2x80)
17
Data Representation
Sum = 32 + 2
= 3410
311910
x 3410
9357
12476
106046
Fractional numbers.
For a fractional octal number, the whole part is converted to decimal as above. The digits
in the fraction part are divided by multiples of 8.
(i). (0.54)8
(ii). (0.642)8
16 122 REM
16 A7(=10 in decimal)
7 7 Copy
16 745 REM
16 946
16 2 E (=14 in decimal) Copy
2 2
Fractional numbers.
For a fractional decimal number, the fraction part is repetitively multiplied by 16, noting the
complete units of 16’s. The complete units are then copied downwards.
19
Data Representation
0.00 x 16 (not necessary)
3210 2016
0.12510 0.216
= (7x161) + (Ax160)
Sum = 112 + 10
= 122
Fractional numbers.
For a fractional hexadecimal value, the whole part is converted to decimal as above. The
digits in the fraction part are divided by multiples of 16.
Example 2: Convert the following hexadecimal fractions into their decimal equivalents.
(i). (0.8)H
(0.8)H = 8x16-1
= 8x (1/16)
= 0.5000
(ii). (A9.328)H
Solution.
The binary digits are grouped into 3’s and each group is used to represent an individual octal
digit.
= 2 1 (4 + 2) (2 + 1)
= 2 1 6 3
= 21638.
Solution.
The binary digits are put into groups of 4’s, each group representing a hexadecimal digit.
NOTE. You can convert an Octal number to Binary, Hexadecimal to Binary or from Octal to
Hexadecimal.
To do this, first convert the given number to base 10 (decimal), then from base 10 to the required
base.
Solution.
23110 111001112
Therefore, 3478111001112
(x). FROM HEXADECIMAL TO BINARY.
Solution.
Step 1: Convert the hexadecimal (base 16) number given to its decimal (base 10)
equivalent.
6DC
Step 2: Convert the decimal (base 10) number obtained to binary (base 2).
2 1756 REM
0
2 878
2 439 0
2 219 1
2 109 1
2 54 1
2 27 0 Copy
2 13 1
2 6
1
2 3
0
2 1
1
1
23
Data Representation
1
Solution.
Step 1: Convert the hexadecimal (base 16) number given to its decimal (base 10)
equivalent.
A71
Step 2: Convert the decimal (base 10) number obtained to binary (base 2).
2 2673 REM
1
2 1336
2 668 0
2 334 0
2 167 0
2 83 1
2 41 1 Copy
2 20 1
2 10 0
2 5 0
2 2 1
2 1 0
1 1
Solution.
Step 1: First, convert the given octal number to decimal (base 10).
24
Data Representation
83 82 81 80 Assign the powers to base 8.
6 0 5 7
16 3119 REM
16 F194
(=15 in decimal)
12 2 Copy
12 C (=12 in decimal)
311910 C2F16
Therefore, 60578C2F16
Exercise I.
25
Data Representation
(B). Convert the following binary numbers to decimal.
(i). 110111001 (2 marks)
(ii). 10101.1011 (2 marks)
(C). Convert the following binary numbers to hexadecimal number systems.
(i). 1011 (2 marks).
(ii). 11110101 (2 marks).
(iii). 10100000001111111
(iv). 110111.11 (2 marks).
(v). 1.1110101 (2 marks).
(vi). 0.10111010110011101111
Exercise II.
NEGATIVE NUMBERS.
Both positive and negative numbers can be represented in the computer memory during
processing.
The input numbers whether positive or negative are all represented in binary form.
The negative numbers are used to carry out subtraction in the computer’s arithmetic operations.
This is based on the fact that, subtracting a number is the same as adding its negative to the other.
The following are the various methods used to represent negative numbers in the computer:-
27
Data Representation
(i). One’s Complement (1C) method.
(ii). Two’s Complement (2C) method.
(iii). Signed Magnitude method.
In 1C method, the binary digits representing the negative number are negated, (i.e., the 1’s in the
number are changed to 0’s, and the 0’s are changed to 1’s).
2 17 REM
2 18
2 4 0 Copy
2 2 0
2 1 0
1 1
1710 100012
Therefore, -1710 1 0 0 0 12
Complementing each bit
0 1 1 1 02
In 2C method, the negative number is represented into binary form, then complemented as in 1C
method, but a ‘1’ is added to the Least Significant Digit (LSD) of the complement value.
1710 100012
Therefore, -1710 1 0 0 0 12
Complement each bit, add a ‘1’ to the compliment.
0 1 11 0
1+
0 1 1 1 1
28
Data Representation
In Signed Magnitude method, the number is divided into two parts; the Sign part and the Data
part.
Usually, a ‘1’ is used to represent a negative sign and a ‘0’ to represent a positive sign.
The Magnitude part is expressed in binary but not complimented. Therefore, one part of the
binary digits will be representing the data value, while the other will represent the sign bit.
To make it simple, it is assumed that the sign bit is 1, while the data bits are equivalent to the
binary number digits representing 17.
+1710 0 100012
Exercise.
BINARY ARITHMETICS.
ADDITION:
Adding binary numbers is the same as adding decimal numbers. The difference is that, any
complete units of two’s are carried and added to the next significant digit.
During binary addition (i.e. when adding two digits) the following rules need to be noted.
Sum Carry
0 + 0 = 0 0
0 + 1 = 1 0
29
Data Representation
1 + 0 = 1 0
1 + 1 = 0 1
Example 1:
1 0 0 1
+ 0 1 0 1
1 1 1 0
Example 2:
1 1 0 1 02
+ 1 0 1 02
1 0 0 1 0 02
Explanation:
Addition of two binary numbers starts from the Least Significant Digits.
Zero (0) is added to 0 to get a sum of 0.
The next significant digits, 1 and 1 are added to get a sum of 0 plus a carryout of 1. The
Carryout is given by any complete units of two got after the digits of the same significance
are added.
The carryout from the previous addition becomes the Carry in of the next significant digits, to
which the carry is added.
The procedure continues until the overall sum of the two binary numbers is got.
Note. During arithmetic operations, the data to be worked upon are usually held on locations
(cells) of predefined length or capacity. If the results cannot fit in any of the spaces that contain
the values to be executed, then there is usually an excess bit in the answer.
For instance, in the above example, we have added a 5-bit and a 4-bit number, to get a 6-bit
answer, which cannot fit on either 5-bit or 4-bit areas, hence there is an excess bit in the answer,
what is described as the Arithmetic overflow.
The excess/extra bits of the sum that cannot fit the expected space are known as Overflow.
SUBTRACTION:
30
Data Representation
When subtracting two numbers (i.e. when getting the difference between two numbers), the
following rules must be observed.
Difference Borrowed
(from the next significant digit)
0 - 0 = 0 0
1 - 0 = 1 0
0 - 1 = 1 1
1 - 1 = 0 0
Example 1:
1 1 1 0 12
- 1 0 1 02
1 0 0 1 12
Explanation:
The subtraction starts with the least significant digits towards the most significant digits.
In the first subtraction, a 0 is subtracted from a 1, and the difference is a ‘1’.
In the 2nd subtraction, 1 cannot be subtracted from a 0, and hence a 1 containing 2 is
borrowed from the next significant digit from which a 1 is subtracted and a difference of 1 is
got.
Note that, borrowing 1 from 1 leaves a 0 in the 3rd digit of the number being subtracted from.
The procedures proceed until the subtraction is complete.
Example 2:
11110011
1100000 -
10010011 (base 2)
Note. Subtraction of binary numbers can also be carried out using the Compliments and Signed
magnitude methods.
31
Data Representation
(11101)2 – (1010)2
Solution.
1 1 1 0 1
- 0 1 0 1 0
Step 2: Compliment the digits of the negative number, and then add.
1 1 1 0 1
+1 0 1 0 1
11 0 0 1 0
Overflow
Step 3: Add the overflow digit to the Least Significant Digit of the sum to get the difference.
1 1 1 0 1
+1 0 1 0 1
1 0 0 1 0
1+
1 0 0 1 1 Difference
MULTIPLICATION:
The following rules must be used when carrying out a multiplication procedure.
Product
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
32
Data Representation
1 x 1 = 1
Example 1:
1 0 1 0 Multiplicand
x 1 0 1 Multiplier
1 0 1 0
0 0 0 0 partial products
1 0 1 0
1 1 0 0 1 02 Product
Explanation:
The multiplicand is multiplied by the multiplier digits starting from the Most Significant Digit
towards the least significant digit, shifting one place to the right each time the next multiplier
digit is used to produce the partial product.
The partial products are then added up to give the product of the multiplication.
Example 2:
11100
10010 x
11100
00000
00000
11100
00000
111111000 (base 2)
DIVISION:
33
Data Representation
Example 1:
101 1001010
-101
1000
-101
0111
-101
0100
Explanation:
Since the divisor is made up of 3 digits, we start by grouping the dividend bits into groups of 3’s
from the Most Significant Digit.
In the first grouping, 100 is got, which cannot be divided by 101, and hence extend to 4 digits
and 101 goes into 1001 once. The 1 is copied on top.
The remainder 100 cannot divide into 101, and hence the next digit 0 is added to it forming
1000, that divides into 101 once, and 1 is copied on top.
The procedure repeats until all the digits of the dividend are exhausted and a remainder of
11102 is got.
Example 2:
110
101 11110
101
101
101
00
110
Question.
2567
3476 +
34
Data Representation
6265 (base 8)
Exercise II.
35
Data Representation
(D). 1001011.011 subtract 111.111 (2 marks).
2. Perform the following hexadecimal arithmetic:
(a). 31 – 9.7 FD (3 marks).
(b). ABCD + 145 (3 marks).
(c). DFAC – 101B (2 marks).
(d). 14.79 + BC.78 + DE.78 (2 marks).
3. Perform the following octal arithmetic:
(i). 2.456 + 17.456 + 31.76 (2 marks).
(ii). 57724.33 add 422.76 (2 marks).
(iii). 20 multiply by 13 (2 marks).
(iv). 243.4 multiply by 123 (3 marks).
(v). 421 x 4.7 (3 marks).
(vi). 124 divide by 10 (2 marks).
(vii). 260032 divided by 246 (3 marks).
(viii). 21.256 – 6.347 (2 marks).
(ix). 6625.24 subtract 751.76 (2 marks).
COMPUTATIONAL ERRORS.
1). Overflow:
Overflow occurs whenever the results of an arithmetic operation are bigger than the assigned
work area.
E.g. If the result is to be stored in an 8-bit work area (register) and the results generate more
than 8 bits, an error message is generated by the computer. This may terminate the normal
execution cycle.
2). Truncation:
To truncate a number is to drop out some digits of the number after the decimal point when
for example a division or fraction gives a recurring quotient.
36
Data Representation
The quotient, therefore, may be rounded down to 3 decimal places, thereby dropping out the
rest of the values.
I.e. 1/9 = 0.111
If a division produces a recurring quotient or in fractions that recur, the result (quotient) can
be rounded to the nearest value.
In this case, the quotient can be rounded up to 4 decimal places as 0.4792, because the next
value after the 4th decimal place is >=5. However, if it was less that 5, then it would have
been rounded down to 0.4791.
The floating point notation is the expression of a number or values into their standard form
equivalent.
E.g., 1234 can be expressed in standard (floating point) notations as:
1.234 x 103
Calculations done in floating point notations or any numbers represented in their floating
notation are prone to truncation errors. For example, to represent a number such as 0.1234
x 104 into a 3-digit accuracy, then the result is truncated.
However, computers with larger storage areas for floating point numbers are less prone to
such truncation errors.
Exercise.
1. Name and explain the four types of computation errors. (20 marks).
37
Data Representation
The decimal number system is the accepted international system. However, computers can
understand and work only using the binary language, i.e., in 0’s & 1’s.
Therefore, in order to talk to computers, one has to convert the information (whether numeric or
non-numeric) into binary form. The process of representing numeric or non-numeric information
in terms of binary digits is known as Coding.
By using different bit patterns, the non-numeric information, such as letters of the English
alphabet A-Z can be represented.
E.g., letter A is represented as: 110001, while the equal (=) sign is represented as 001011.
In addition, the Digital computers that are frequently used in many business environments use
binary digits to operate, i.e., they accept data & instructions in terms of 1’s and 0’s, work upon
them and produce information, which is immediately stored in the form of 0’s & 1’s before they
are communicated to the end users.
This means that coding in computers is done to achieve the following objectives:
1). To convert numeric & alphanumeric information into binary digits of 0 & 1.
2). To transmit correct data to the computer.
3). To detect and correct errors, if any, during the transmission of data.
The following are the various methods of representing data in Binary Number systems in a
computer:
What is a Code?
Rules used to convert data from one representation to another, e.g. from ASCII to EBCDIC.
BCD Code.
38
Data Representation
This method uses 4 binary digits to represent an individual decimal digit.
Example;
3 9 8(10)
Note. The BCD notation of the number 39810 is not the same as when represented in the pure
binary notation.
The BCD notation uses more bits than the pure binary notation, and is arithmetically slower.
However, the BCD operations are simple, they remove rounding (truncation) errors & are
used to store data in packed mode.
(2). Extended BCD Code.
This is a 6-bit coding system. It consists of 4 data/numeric bits, and 2 additional bits known
as the Zone bits. An extra bit known as the Parity bit is added (7 bits, when the parity bit is
included).
The Zone bits indicate the type of characters represented by the code, while the Data bits
represent the particular characters represented by the codes.
Numerals, alphabets and special characters can be represented in their binary form using the
Extended BCD coding system. The characters are classified into zones, which are then
assigned zone bits.
Counting starts from the 1st character within a zone and ends at the last character within that
zone.
Note. The Zone bits, in computer with numeric bits, form codes to present characters.
39
Data Representation
Example 2: The Numeric equivalents of the characters within the zone A – I.
Similarly, the other numeric values of the characters in the other zones can be determined,
i.e., J=1 to R=9 and S=2 to Z=9.
The Extended BCD uses unique combinations of two zero bits and 4 numeric bits to
represent specific data characters.
To represent a given character in Extended Binary code, the zone bits are added to the data
bits (the binary digits representing the numerical equivalent to the character), and an extra bit
(the parity bit) added.
The zone bits for A are ‘11’ and data bits of A are ‘0001’.
X 11 0001
The Parity bit ‘x’ depends on the machine/computer in use, i.e., whether Even or Odd parity
machine.
For an Even parity machine, the no. of 1’s in a code representing a character adds up to an
even number, while for an Odd parity machine, the no. of 1’s in a code representing a
character adds up to an odd number.
Therefore, the value of ‘x’ is ‘1’ for an even parity machine and ‘0’ for an odd parity
machine.
Note that, if X=1, then the no. of 1’s in the code for A are 4, which is an even number. If
X=0, then the number of 1’s remain 3, which is an odd no.
40
Data Representation
Parity bit – A check bit appended to a collection/group of binary digits to make the sum of
all the binary digits, including the check bit, always odd or always even.
The Parity bit does not change the value of the character stored, but it is used to automatically
detect transmission errors during data communication, e.g., from an external storage media
like cassette to the internal memory. If some bits fall off, the computer responds with a
parity failure error message.
Parity Check – A check to determine whether the number of bits in a pattern is either even
or odd.
This is a standard 7-bit coding system, with 3-zone bits added to the 4-data bits, and an extra
parity bit (8 bits when the parity bit is included).
ASCII code is used for data interchange involving computers and communications equipment.
The ASCII code format for a given character therefore looks like:
Note. The ASCII coding system can represent up to 128 characters, i.e., 27 characters.
41
Data Representation
EBCDIC Code.
This is an 8-bit coding system, with 4 zone bits, 4 data bits and an extra parity bit (in total it
consists of 9 bits, when the parity bit is included).
The EBCDIC coding system is an extension of the 6-bit BCD coding system. It allows for the
representation of more characters, i.e., 256 (28 ) characters as compared to the 64 (26) characters
that can be represented in the 6-bit BCD coding system.
The EBCDIC uses unique combinations of 4 zone bits & 4 numeric bits to represent specific data
characters.
The EBCDIC code format for a given character would look like:
Exercise I.
Exercise II.
Exercise III.
42
Data Representation
STORAGE ORGANISATION.
The computer memory is designed in such a way that the basic unit of the stored entities, i.e.,
data, instructions and information, is a 2-state unit representing a ‘1’ or ‘0’. The 2-state quantity
is described as a Bit, Cell or Binary digit. In other words, storage is only possible in terms of
0’s & 1’s.
The two units can be described by electric circuit using two voltages. When there is voltage
(when the circuit is on), a ‘1’ is represented, and when there is no voltage in the circuit (when it
is off), a ‘0’ is represented.
To represent characters the bits are combined together. The group of bits representing characters
can also be described as Location. This location forms the basis of computer storage
organization.
Each individual location has got its unique address (identifier). During storage, the address is
used to determine the location onto which the character is stored and from which subsequently it
is retrieved.
Note. Reading/retrieving characters leaves the contents in a location undestroyed, i.e. reading
is just copying the contents of a location, leaving the copied contents in their location.
On the other hand, Writing to a particular location is destructive in that the previous contents of
that location are replaced with the information being written, i.e. The location contents are
overwritten, hence cannot be recovered.
The no. of bits that defines the location is influenced by the computer design & the instructions
used.
E.g., most microcomputers were originally designed based on the 8-bit organization. However,
due to technological development, modern microcomputers are mostly 16-bit machines.
In Character machines, each location is made from a group of 6 bits, i.e. the characters are
stored in terms of 6 bits. Each character has its own location and hence a unique address
for reading or writing individual character.
Character machines use the 6-bit BCD coding system in representing character in the
memory.
43
Data Representation
In Character machines, both characters and numerals are stored in locations of 6 bits. This
means that, if the characters are mostly numeric, then a lot of space is wasted because for
a numeric character, only 4 bits are necessary to represent the data bits, while the zone bits
are just filled in by zeros. This mode of storage location is described as Impacked binary
field (or Impacked storage mode).
The Word machines use fixed word length storage. The typical word lengths are 24 bits
or 32 bits depending on the computer design.
The Word machines are designed such that, each word has its own unique location, with a
unique address/identifier, which is used to identify the location during writing or reading.
Word machines have an advantage in the organization of the entities in the computer
memory in that, the exact number of characters can be stored and retrieved conveniently,
unlike Character machines whose organization of the locations is limited to 6 bits.
The Byte machines have an advantage over the Character machines in that, if the
characters are mostly numeric, they can be stored in packed mode, giving the packed
binary fields. In this mode of storage, two characters are stored in single byte, as opposed
to impacked fields in Character machines, which stores one character per byte.
For example, 2468 can be packed into 2 bytes (16 bits) as compared to Character
machines, which would use 4 bytes (32 bits).
2 4 6 8
0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0
1 byte 1 byte
2 bytes
44
Data Representation
Fig 2: Character machine representation of 2468 (packed).
2 4 6 8
0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0
1 byte 1 byte 1 byte 1 byte
4 bytes
The arrangement of the locations of a Byte machine provides for a unique identifier for each
byte, which can be used for write and retrieval operations on these locations.
The Byte machines can also be described as Variable Word length machines. This is because,
several bytes can be grouped to form words of required length.
The Byte machines are more advantageous for they combine both the capabilities of the
Character and the Word addressable machines.
Exercise I.
45