You are on page 1of 35

FCIT UNIT-03

PROGRAMMING LANGUAGES CHAP-01

INTRODUCTION
 You read books and write articles, stories etc. in that particular language (script)
which you feel comfortable with. Books, novels etc. are developed in a particular
language. Likewise, we work in different application software’s for performing our
different jobs.
 We develop those applications software’s in a particular language. Programming
language is not much different than that of natural language which human beings
speak.

DATA, INFORMATION AND KNOWLEDGE


 Data after processing gets converted into information. Therefore, data is the
foundation of information.
 Information enhances the knowledge, therefore, the information is the basis of
knowledge.
 In this way data, information and knowledge are mutually related. Processing of
data and production of information are the preliminary stages of delivering
knowledge to the human being.
 Knowledge enables a person to carry out his job further with more efficiency. That
is why man requires data and information regularly.

CHARACTERISTICS OF INFORMATION
1. MEANINGFULNESS
 The relevance of information with requirement should be maintained otherwise the
information would be meaningless. For example, if we want to go to Paris but we are
collecting information about Shanghai, it will solve no purpose to us and will remain
irrelevant.
2. SURPRISING ELEMENTS
 Information should also cover the knowledge about exceptions such that if any
exception occurs, then we should be able to tackle it efficiently. For example, in an
intelligence bureau, some of its members are spying for other agencies, then it is

PAGE-1
FCIT UNIT-03

necessary to take immediate action to stop them. But if bureau is unaware of such
persons, they may lose many vital information to enemy agency.
3. CONFORMITY WITH PREVIOUS KNOWLEDGE
 If the information is changed suddenly and lacks conformity with previous information
then it may misguide us in attaining our objective.
4. CORRECTION OF PREVIOUS KNOWLEDGE
 The information gathered may have some deficiency or may have some changes, in
comparison to the previous knowledge. But the new information should either insert
some positive changes to the previous knowledge or nullify the previous deviations.
New information may be modified but it should not be so exceptional that it becomes
difficult to believe in.
5. BREVITY
 In any detailed report, information should not incorporate irrelevant data with it. If a
detailed report is given to the decision makers then it will be difficult for them to
emphasis on vital items of desired project. Therefore the information should be brief,
so that decision maker can evaluate the projects under considerations and conclude
out the best result.
6. ACCURACY
 Information should be accurate. The rate of accuracy could vary with the requirement.
The estimate of the population of a country may have tolerance level of 15% which
means that the data is 85% correct still it is accepted. But in the case of a bank, the
statement of an account should be 100% accurate, otherwise it may lose its goodwill
among its customers.
7. TIMELINESS
 To initiate a work, or to rectify any deviation in any activity a timely information is
required. If a doctor receives the reports of the seriousness of the diseases after the
death of the patient, it would be meaningless. If a manager receives the report of zero
inventory after the production has stopped, it would solve no purpose. Timeliness
should be maintained.
8. ACTION ORIENTED
 Many managers receive the information on time but they find it deficient in some or
other means items. This creates difficulties in planning and actuating the job. So, the
information should be sufficient in itself, and helpful in reaching some purposeful
decision.

PAGE-2
FCIT UNIT-03

COMPARISON BETWEEN HUMAN LANGUAGE AND COMPUTER


LANGUAGE
 Human language and computer (programming) language have one thing
common; they are language and they have the same concept.
 Both use syntactic and semantic rules.
 Both have been evolved after a long period of time. Human languages like English,
Hindi and Urdu are not the output of one day, one year, one decade or one century.
It took centuries and centuries in bringing out this form of language that we speak
today. Even today, languages are evolving. New words are being added. Likewise,
computer languages evolved after a long journey from binaries to mnemonics and
algorithms.
 Computer languages, like human languages are based upon alphabet, words,
phrases etc. Both are used to communicate.
 Human languages are used to communicate people locally or globally. Similarly,
computer languages help in communicating between computer and people as well
as computer and computer locally (Intranet) or globally (Internet).
 In fact, the creation of computer language is inspired from human language. In
both languages grammatical and syntactic mistakes may lead to wrong message.
What seems as only difference is that human languages are spoken while computer
languages are not although this is not a very strong difference yet.

WHAT IS A PROGRAM?
 A program or a computer program is a collection of instructions that describes a
task, or set of tasks to be carried out by a computer. Formally speaking, a program
is an expression of a computational method written in a computer language.

WHAT IS A PROGRAMMING LANGUAGE?


 A programming language is an artificial language that can be used to control the
behavior of a computer. Programming languages, like human languages are
defined through the use of syntactic and semantic rules, to determine structure
and meaning respectively.
 Programming languages are used to facilitate communication about the task of
organizing and manipulating information and to express algorithms precisely.
Thousands of different programming languages have been created and every year
new languages emerge.

PAGE-3
FCIT UNIT-03

PROGRAMMING DEVELOPMENT CYCLE


 When you start the task of programming for an application or start developing a
software, it has to pass so many phases before it takes the final shape.
 A program is a set of commands to be implemented by the computer to complete
a given task.
 It's a multi-step process which includes the identification and solution of the
problem, development of computer solution for the problem and a sequence of
commands to be run on the computer.
 While writing the program, one should keep the data in mind which the program
will process to generate information.
 The programming process is a set of activities and they are executed to develop
and execute a computer program. While writing a program the following six
activities are included:
1. UNDERSTANDING PROGRAM SPECIFICATION
 There are two main activities in understanding the specifications of the program. The
first activity is to define the problem. The second one is to analyse the requirements.
2. DEFINING THE PROBLEM
 Before starting the building construction, a builder inspects the blue-print, and tests
that all the permits have been obtained and surveys the foundation of the building.
Builder undertakes different preparations to build a high rise building and a dog
house. Whatever be the project it is implemented carefully and insidiously only after
measuring the preparation.
 Before designing the programs module, the first anticipation which you have to fulfil
is that you should prepare the statement of the problem that the program will solve.
Without discussing the probable solution, the definition determines what, after all,
the problem is. It is a simple statement of one or two pages. It should appear like a
problem.
 Problem defining comes before requirement analysis which is the more
comprehensive analysis of the problem. Problem determination should be in the
language of the user and the problem should be described from the user's point of
view.
 It generally should not be described in technical, computer language. Without
understanding the components of the problem the attempt to solve it might prove a
futile exercise.
 Since, in this condition the solution may not stand true to the need of the user.
Therefore it is required to prepare the problem statement in such way that it can
explain even minute points of the problem.

PAGE-4
FCIT UNIT-03

 It can be done in the best manner when the problem is written in the clear words. The
consequence of better problem determination is always a speedier, simpler and more
accurate solution.
3. REQUIREMENTS ANALYSIS
 Requirements describe expectations that are expected from the program. These are
the first steps in the direction of solution. This requirement determination activity is
also known as "functional specification".
 A clear set of requirements is important for many reasons. Clear requirements help
determining that it's not the programmer but the user who conducts the functionality
of the programs.
 If the requirements are clear, the user may observe them and agrees with them.
 Clear requirements help you avoid guessing regarding the requirements of the users.
The clear specification of requirements is the key to success of the program.
 While analysing the requirements, answering the following questions can make the
analysis more fruitful.
1. What is given as input ?
2. What is expected as output ?
3. How to reach the solution ?
Let us understand input process and output process with an example.
A program, on the request of an operator of a terminal, has to obtain motor car
registration record from a file. The operator will provide a vehicle registration
number and the program will display detailed description of its owner. If the
program is unable to get a record, an error message will be displayed.
Input: Vehicle Registration Number
Process: Look for it using the registration number and after finding it out,
again retrieve the information about the account of the vehicle and its
master’s name.
Output: If retrieval gets successful then allow the detail of the vehicle to be
displayed on the screen, but if you don't succeed in it then show the absence
of the registration of the vehicle and display the appropriate error message.
4. DESIGNING A PROGRAM MODEL
 Once the problem is determined its algorithms (one more term for processing logic)
can be developed. This is the most creative part of programming.
 In this phase, for reflecting the possible options of algorithm it can be developed in
a larger view. Algorithm is a formula, recipe or step by step process, which can be
followed to get the solution to the problem.
 To be useful as the basis of program writing, an algorithm :
1. Must reach a right solution at a fixed time.
2. Must be clear, accurate and free from delusions.
3. Must be in a format which proceeds towards pretty implementation in a
programming language.

PAGE-5
FCIT UNIT-03

 To develop a solution and for preparing the algorithm, the flowchart and pseudocode
are among the important tools.
 Flowchart produce a solution scene and graphic representation
 While pseudocode stands for writing program logic in common English Language.
The logic described by these tools can be written again by using any of the
programming language.

5. DETERMINING CORRECTNESS OF THE PROGRAM


 The most tiresome and difficult phase in the development of program or algorithm
is to ensure that the program or algorithm is error-free.
 The correctness of a program or algorithm is that it should give correct output and
do the expected things.
 The precision of a program or algorithm can be testified by using any one of following
methods- dry run, independent inspection, and structured walkthrough.
6. CODING THE PROGRAM
 It is a process to turn our solutions such as algorithm (flowchart/pseudocode) into
real computer program.
 Here we select a programming language and using the syntax and semantics of
language, we convert our algorithm which is represented in flowchart/ pseudocode
into programming code.
7. TESTING AND DEBUGGING THE PROGRAM
 After the coding is once over, you will insert the program into the computer. Then
the computer will compile our program into machine code.
 Compiling means to change the source code, for example the user program which
has been written using the high level language, into machine code, which is a
language understandable by the machine.
 Syntax Error: Syntax errors are created when the computer is unable to
understand the command insert by the language compiler programmer. When
such errors are faced, the computer rejects the program and releases an error
message. These errors are faced during compilation and are easy to rectify. In so
many cases, these errors are caused because of spelling errors, missing comma
etc. and incorrect syntax. For example, if we type PRINTT in place of printf then it
causes syntax error.
 Execution Errors: These errors are faced during the execution of the program
after error-free compilation. The execution error is also called run-time error. The
probable reasons of such mistakes are as follows -
 Use of infinite loop.
 Correct output only for some specific data
 In-correct data or data in incorrect order.
 Name of an incorrect file.

PAGE-6
FCIT UNIT-03

 Divide check error: These appear when a number is divided by zero or by the
number which is very close to zero.
 Logical Errors: The reason of logical errors are the mistakes committed by the
programmers while coding the program. A computer can't identify the logical
errors. For example, the formula to calculate the area of a rectangle is : AREA =
LENGTH * BREADTH Just because vision fault at the time of coding the formula is
written like this - AREA = LENGTH – BREADTH. It is bound to produce an incorrect
result , such errors can only be caught by using dry run. To rectify these errors,
we'll have to carefully study the algorithm of the program. These errors can be
found out by running some sample programs whose answers we know in advance.
By designing the program properly most of such errors can be rectified. Checking
the whole program and carefully done dry-run and walk through are such ways
which can help in removing these errors.
 Debugging: Debugging is a process of identifying the main reason behind the
error and removing it. It is quite opposite to testing, which is a preliminary way of
finding the errors.
8. DOCUMENTATION
 Once a program has been once written and debugged it is ready for action, and
therefore it requires a document or written procedure, in which how to run the
program, how to enter the data, what sorts of problems are expected, and how to
handle them are answered.
 In the documentation of a program, flowchart, pseudocode, program list and
algorithm and processes are included in detail.
 Documentation is necessary for the maintenance of a program. Without proper
documentation, it would be more difficult to make amendments in the program
afterwards.
 The compilation leads to some special sort of errors which are displayed by the
computer after the process is over. These errors are to be rectified and the program
is compiled again. This process goes on till the program doesn't get completely error-
free.
 After it, we should test, whether the program is performing every task for which it has
been designed.
 Three types of errors syntax, execution and logical are often faced. It is a wrong notion
that algorithm is the last phase of development cycle.
 In fact, it should be combined with the entire phase of programming process,
especially with design and implementation, for it is expected that documentation
helps a person in understanding the logic of the program.

PAGE-7
FCIT UNIT-03

ALGORITHM
 Algorithms are step-by-step commands which are used to complete task of your
choice.
 Every command in algorithm is known as step while is programming languages,
it is generally called statement.
 To describe algorithm, you needn't know anything about computers. What you
need to have is a broad thinking and knowledge about your mother tongue.
 Suppose, you are given two glasses of colored water-one red and the other
green. Now you are being asked to interchange the water of two glasses. It means
the glass with red color should contain green water and vice-versa. Let us think
of the solution to this problem.
Step 1: The glass no. 1 has red water.
Step 2: The glass no. 2 has green water.
Step 3: Take an empty glass which is the third one.
Step 4: The red water of glass no. 1 will be poured into empty glass no. 3.
Step 5: The green water of glass no. 2 will be emptied into already empty glass no. 1
Step 6: Now the red water of glass no. 3 will be poured into glass no. 2 (which is
completely empty).
 Its not necessary to write the algorithm in english only, you can write in other
languages also. But the practice is, it should be written in English.
 The algorithm as a solution to the above problem will be written like this in
English :
Step 1: Take red water in glass no. 1
Step 2: Take green water in glass no. 2
Step 3: Take an empty glass no. 3
Step 4: Pour red water of glass no. 1 into glass no.3 (Glass no. 1 is empty)
Step 5: Pour green water of glass no. 2 into glass no. 1 (Glass no. 2 is empty now)
Step 6: Now pour red water of glass into glass no. 2 which is empty

PROGRAM FLOWCHARTS
 Program flowchart is a pictorial presentation of the required logic to complete a
task which contains all the steps of a program. It is called flowchart as it charts
the flow of the program.
 It is a symbolic representation of every input, output and processing steps. Apart
from being the right method of writing the algorithm it is also a part of the
documentation of the program and helps in maintaining, debugging and
understanding the programs.

PAGE-8
FCIT UNIT-03

 In a flow-charting technique, the operations are denoted as an appropriate


symbol for work.
 In traditional program flowcharting, simple geometrical symbols are used to
represent the beginning and end of a program, process, decision. These flowchart
symbols are linked by arrow marks to display the sequence of operations.
 In short, flowchart, is a graphical representation of operations, activities or
procedures by using symbols. It is used in computer system analysis, activity
analysis and common program sequence representation.
 The following things denote the popularly used symbols and their commonly
acceptable meanings –

PAGE-9
FCIT UNIT-03

PSEUDOCODE
 Pseudocode program is the second and optional method. The program logic uses
pseudocode statement in place of symbols for representing logic steps which
acts as bridge between actual programming and simple English.
 In pseudocode, every step is written by using English phrases which are also
called construct.
 A pseudocode is the outline of a program which is written in a form that can be
converted into any actual programming language statements.
 A pseudocode neither can be compiled nor can be executed, nor does it have any
actual formatting or syntax rule.
 The advantage of pseudocode is that it exempts a programmer from the care of
the descriptions of all language rules and they can focus on algorithm. Without
knowing which programming language, you will use finally you can write
pseudocode. Some practices which are applied while writing pseudocode are as
follows:
1. All the statements in the loop should be intended. Programming Languages
2. All the alphanumeric value should be enriched by single or double quotation
marks.
3. The beginning and end of a pseudocode should be determined with 'Start'
and 'End' keyword.
4. The definite keywords in all the statements should be include indicating a
certain task.
 For example the pseudocode for the sum of two numbers will be as follows :
Start
Accept N1
Accept N2
SUM= N1 + N2
Display Sum

PROGRAMMING APPROACHES
 There are various methods to solve a problem. Usually, we make programs with
the aim of solving problems. There are different programming approaches. They
are Top-down, bottom-up and modular programming.
 Top-Down Design
 Every system has a several hierarchies of components. The top level of component
represents the whole system. Top-down design technique starts from top level
component to lower level (bottom) component. In this technique the system is

PAGE-10
FCIT UNIT-03

divided into some major components. Similarly, other components are divided into
some sub components.
 Bottom-Up Design
 This technique of designing a solution is just reverse of top-down design technique.
It starts from lower-level component to higher one. It first designs the basic
components and from these basic components it designs higher level components.
Every higher-level component uses the lower-level component.
 Modular Approach
 This is the best method for designing a complex system. In this technique we will
divide the large system into some smaller modules. If we discuss a module in terms
of programming, then it is a logical group of some sets of instructions, also called
function or procedure. Each module is a separate part of a program. It is easy to
modify the program with modular approach, because changes in one module
doesn’t affects the other module of the program. It is easier find a bug in this
module.

TYPES OF PROGRAMMING LANGUAGE


 It is necessary to know, what the basic requirements of any language are, and what
are the aspects of the computer programmers for any language and also what
types of difficulties arise with other languages at that time.
 The programming languages could be broadly divided into two categories:

LOW LEVEL LANGUAGE


 The language, which doesn’t include any translator to convert its code to machine code
is called low level language.
 It means the low-level language codes are not required to be translated any way.
 Machine Language and Assembling Language are the examples of low-level language.
But these languages are very tough to program.

PAGE-11
FCIT UNIT-03

 It is required to have the in-depth knowledge of computer hardware structure. It is also


very time consuming and error prone. Also, we have to write the program separately
for each platform.
 Since the low-level languages are related with computer hardware directly, hence the
execution of the program is faster than high level languages. Low level language can
be classified into machine level and Assembly languages.
1. Machine Level Language
 The computer system can understand only the digital signals, which is binary 1 or
0. So the instructions given to the computer can be only in binary codes i.e., 0 and
1. And the instruction given in the Binary code is called machine language.
 The machine language is simple for machines whereas very tough for the
programmers.
 The maintenance of machine language program is also difficult. There is possibility
for errors in memory locations of binary instructions.
 The machine language programs are also not portable. Every computer system has
its own machine codes instruction set, so the program written on a particular
machine will not run-on other machine.
2. Assembly Language
 In assembly language the instructions are given in the form of English like words,
such as MOV, ADD, SUB etc. They are called ‘mnemonic codes’.
 Compared to machine language, the assembly language is easy to understand. But,
as we know that computer is an electronic device and it can only understand the
binary codes.
 So, the program written in assembly language has to be converted into machine
level language.
 The translator which is used for translating the assembly language into machine
language is called “assembler”.
 The data are stored into the computer registers and every computer has different
set of registers. So, the program written into assembly language is also not
portable. It means we have to re-translate again for different computer systems.
HIGH LEVEL LANGUAGE
 High level language is designed keeping in mind the features of portability, means
these languages are machine independent.
 The high-level language is English like language code, so, it is easy to code and
understand.
 The high-level languages require a language translator to convert the high-level
language program into the machine code.
 The translator which is used to do so, is called compiler or interpreter. FORTRAN,
COBOL, BASIC, PASCAL, C, C+ +, Java are few high-level languages.

PAGE-12
FCIT UNIT-03

THIRD GENERATION LANGUAGE


 Third generation languages were the first that relaxed programmers from writing
programs in machine and assembly languages.
 In the third-generation languages, English words replaced the binaries and
mnemonics that were difficult to understand. Now, programming became
understandable to the learners and even learning process got simpler.
 The third-generation languages were not machine dependent and therefore could
be written without understanding the architecture of machine.
 Moreover, programs got portable means you could have copied the coding from
one computer to the other with their compiler or interpreter. Some of the most
popular third generation languages included BASIC (Beginner's All Purpose
Symbolic Instruction Code), PASCAL, COBOL, C and C+ + and so on are being
discussed in brief here.
o BASIC – BASIC is contracted form of Beginner's All Purpose Symbolic Instruction
Code. It is widely used in microcomputers and very easy to learn. It was
developed by Dr. John Kemeny and Thomas Kurtz jointly at Dart Mouth College,
America in 1964. It is an appropriate language for learning computer
programming. It is mostly available on personal microcomputers. BASIC uses
interpreter to translate instructions in machine language. After writing each
instruction, it is checked by interpreter which causes instant information
regarding any error. Due to these reasons this is popular amongst programming
learners. It takes less space on computer as its translator is small in size. It can
work on most of the microcomputers. BASIC is available in the market in many
versions today. GWBASIC and BASIC are the most popular versions.
o FORTRAN – FORTRAN stands for Formula Translator. John Backus, from
International Business Machine, in 1957 had developed it. This is a high-level
language meant for solving scientific and mathematical problems. FORTRAN IV
was one of its several most popular versions. Algebraic calculations can be
performed easily with this language. FORTRAN has become Fortran now.
o COBOL – COBOL is an abbreviated form of Common Business Oriented
Language. This is used for solving problems of business data processing.
Commander Grace Murray Hopper and his team had developed it in the
department of American Defense in the year 1959. Later its development work
was handed over to a group named Conference on Data Systems Languages
(CODASYL). The first official report on COBOL was published in 1960. Later in
1968 its new version after some improvements appeared. Latter versions came in
1974 and 1984. Presently COBOL is used as business data processing.
Development of COBOL aimed at promoting such a language which was not
machine dependent and its programs could execute on different computers.
COBOL has got its own compiler to translate its programs into machine language.

PAGE-13
FCIT UNIT-03

o PASCAL – It is derived from ALGOL 60. It was named after the great
mathematician Blaise Pascal. Nicklaus Wirth had developed it in 1970 for
preparing system software’s. This is a Block Structured Language.
o C – C language was developed in 1972 at AT & T Bell Laboratories in America. It
was developed by Dennis Ritchie. The name was derived from its earlier versions
B and BCPL. Today it is widely used in software developments. Apart from this, it
is related with UNIX which has increased its uses. Several built-in programs of
Unix were written in C language. C language is a powerful language because it
provides the data address in the memory.
o C++ – C+ + Language was developed to overcome troubles of solving repeatedly
the same problem. It is supposed to be an extension of C language. Bjarne
Stroustrup had developed it in 1980 at Bell laboratories. This language was
developed based on a new technique - object oriented programming leaving
tradition of procedure-oriented language behind. Object oriented programming
is such a method which can develop complex and large programs. These sorts of
programs were difficult to handle so far.
o Java – Java is a language developed by Sun Microsystems in the decade of 1990
It is specially used in web programming to create applets (small interactive
programs) for web pages. Java language creates self-contained codes for
execution. Hence, they may be called platform independent languages.
FOURTH GENERATION LANGUAGE
 Fourth generation languages are easier to use than the third generation languages.
Normally, fourth generation languages use visual environment instead of textual
environment that was used generally in third generation languages.
 In textual environment, programmers use English words to create source codes. One
line statement of fourth generation languages equals to several lines of statements
of third generation languages.
 In the visual environment of the fourth-generation language, programmers use
toolbar to drop and drag items like buttons, labels and text boxes and create visual
definition of an application.
 Once program designed the appearance of a program objects can be assigned
objects several responsibilities on the screen.
 Most fourth-generation languages provide programmers an integrated
development environment to use it for software development. Integrated
development environment offers the programmers all necessary tools for
applications development in a particular program.
 Compilers and run-time support are also available for their applications. Microsoft
Visual Studio and Sun's Java Studio are two such examples of commercial integrated
development environment.
 Visual Basic, C #, Dreamweaver, JavaScript are a few examples of this generation
language. The fourth-generation language incorporates several features in itself

PAGE-14
FCIT UNIT-03

and its pitfalls can hardly be found out. However, all have some negative aspects
with their positive ones.
o Advantages
 The fourth-generation language is easy to learn and software
development is simple here.
 Fourth generation language provides textual interface as well as
graphical interface.
 Programmers have alternatives in the fourth-generation languages as
the number is quite big.
 Programming takes less space in the fourth-generation languages as one
line written in this generation language equals to several lines in the
earlier generation languages.
 Availability of the fourth general language is not difficult.

o Disadvantages
 The fourth-generation languages require high configuration computers
to run.
 Expertise is less required in the fourth-generation languages means easy
programming enables novices develop softwares. Consequently,
importance of experts diminished.
 In the fourth generation there is a big series of programming languages
that makes it a bit difficult to decide which should be used and which
should be left.

PAGE-15
FCIT UNIT-03

VIRUS CHAP-02
VIRUS
 Usually when we come across the term virus we are mistaken of the virus we suffer
from and get ill with flu and like that. It is actually not. Virus in terms of computer
is not a living
 Organism which affects our body. It is named after such because of its
characteristics. A computer virus, in real, is a tiny program which when enters a
computer, gets associated with pre-installed programs and applications and
induces malfunctioning the programs. Like virus (biological organism) which
enters a human body affects severely his health. Similarly, a computer virus (a
program) when enters the computer destructs the proper working of a computer.
It can affect working of a computer in the following ways –
o by destroying important information in the computer.
o by making change in directories.
o by formatting floppy or hard disk.
o by diminishing the speed of computer processing.
o by altering the function of the keys on keyboard.
o by altering the data stored in programs and files.
o by stopping or hindering the execution of files.
o by flashing irrelevant messages on screen.
o by hindering the booting of a computer.
o by altering the size and structure of files.
 When a virus affected program is executed, the virus executes itself in the primary
memory of the computer.

HISTORY
 The word virus was, first, used by Fred-Cohen, a student of California University,
in his research paper. The student showed in his research paper how the computer
program should be written which can enter a computer and attack its system just
as virus enters our body and infects it.
 First, it is very difficult to find out computer virus. People didn't know about it till
the decade of 1980, and they denied the existence of such a program which can
harm the computer.
 (C) Brain is supposed to be the first modern virus which spread on a big level in
the whole world. It created a news because it contained the name, address and
the privilege year of the person who created this virus. That program contained

PAGE-16
FCIT UNIT-03

the name and complete address of two Pakistani brothers - Basit and Amjad and
their company. At that time virus was a new thing so people didn't think about it
seriously.
 In the beginning of 1988, Macintosh Peace Virus emerged. This virus was from
Richard Brandow, the publisher of a Montnel based magazine MacMag. This virus
was specially developed to hamper the Macintosh Operating System and on 2nd
March, 1988 the following message came on to the screen. Richard Brandow,
Publisher of MacMag, and its entire staff would like to take this opportunity to
convey their Universal Message of Peace to all Macintosh users around the world.
 Viruses kept coming with the passage of time and to avoid them the user started
thinking of a solution and then anti-virus software came into existence which is an
industry in itself.
 But the faster the anti-virus software came into existence, the more viruses were
invented. When anti-virus software industry was reassured that it had achieved
the aim of controlling viruses then only macro-virus came into existence.
 Normal virus were used to infects executable files and system area while Macro
virus started infecting files in Microsoft word and this led to a large scale problem
as generally people exchange files written in MS- Word through e-mail.
 Macro virus were capable of causing more harm than the normal virus. They
directly attacked the application program resulting in huge loss of data. This
compelled the anti-virus industry to develop a new type of anti-virus.

MECHANISM OF VIRUS
 After knowing about virus and their history let us know how they work. It is
computer program which can duplicate itself. But, since, virus is a computer
program it too has its limits.
 Virus can do as much as it has been instructed by its programmer through
program.
 For example, a Michael Angelo virus destroys a data on March 6 as the
programmer has instructed it to ensure, first, it is 6 march and if he ascertains that
it is 6 March it displaces the disc sector with the given instructions.
 Unlike other programs a virus can duplicate itself. Generally, a program duplicates
itself when we issue an instruction as we give copy command to make a copy of
a specific file.
 We also know, that no command can be executed themselves, till we issue such
an instruction. Likewise, a virus program is either executed directly by the user or
when another program is executed by the user.

PAGE-17
FCIT UNIT-03

 Now the questions are why a user will execute a virus on his own computer. For
it, virus creators use a technique so that the user can be fooled to execute the
virus. In most of the situations, virus is present in already existing executable file.
When that file is executed the virus codes too are executed.
 Once the user executes the virus program, it spreads in the entire system and as
per the instructions available in the program it start damaging the entire system.
 Usually, the virus program gradually starts copying themselves in other executable
files; and when these files are executed by the user, then they start spreading on
the entire system. Therefore, the virus needs to be executed to infect a system or
program.

HOW A VIRUS SPREADS


 A virus is a communicable program. It may be propagated by one of the
following reasons.
o Using a pirated software – When a user acquires a program illegally it is
called a pirated software. A pirated software has maximum probability to be
infected from viruses as it comes from unauthentic sources and wherever the
pirated software are used, they carry viruses.
o Through Network System – On the network when one client gets affected
and it is shared with other clients then this causes infection spread among all
the shared clients.
o Through Secondary Storage Devices – When a file is copied from a virus
affected computer through secondary storage devices, virus also gets
communicated to that very system.
o Through Internet – Presently, Internet is supposed to be the most critical
carrier of viruses. Virus making people also use this medium frequently for
their ill - venture of spreading viruses.

HOW IS VIRUS NAMED


 The typically beautiful names of viruses like Lucifer, Eddie, and Disk Washer amaze
the user after all how they are named.
 In most of the examples, viruses are named by the people who find them. Anti-
virus programmers decide the name on the basis of virus code, their work, the size
of virus code, their additional impact and the message sent during virus load.
 Even, after considering all these factors the appropriate name of the virus on that
basis is not available then it is given any name by the anti-virus programmer for
the sake of identifying it. For example, Disk Washer was named on the basis of its
internal message, "From Dish Washer with Love."

PAGE-18
FCIT UNIT-03

 At times, it happens two working anti-virus professionals come to know about the
same virus at the same time. In such a condition, the single virus is known by two
names, for example, V3000 which was named by McAfee Scan, is also known as
GumNam which can be scanned by Nashot.
 To save a user from the problem of multi-naming of a single virus, the computer
Anti-virus Research Organization, if such dispute takes place, give a standard
name to the virus by which it is known all over the world. But before CARO names
them they are known by different name but when CARO give them a standard
name then all those names are known as there aliases.

A FEW PROMINENT VIRUSES


Today our computer is infected with several types of viruses. Everyday new types of
viruses are developed. The development of Internet has given a new dimension to
the spread of virus. Numerous sorts of viruses are infecting the computers today
through net.
MICHELANGELO
 By far the most famous computer virus around, the Michelangelo virus is so named
because it wipes out the data in the affected hard disk on the 6th of March
(Michelangelo's Birthday).
 It is also referred to as the 'March 6 virus' by some virus preventives. The virus was first
discovered in the middle of 1991 and nearly all virus preventive software developed
after its discovery were capable of correctly removing this virus.
 This is one of the most well-known viruses largely because many antivirus researchers
(wrongly) predicted widespread doom affecting the computer users on March 6th.
 The technical journalists in the industry went wild (what with a fancy name like
Michelangelo) and predicted millions of infected computers, enormous loss of data and
the precise date on which this catastrophe would occur.
 The hype that built up to March 6th collapsed when nothing actually happened on that
date. Some reports which came up later mentioned that the estimates of the number
of infected computers were in all probability highly exaggerated. But Michelangelo
remains the favorite of the media, even in India, where Michelangelo reports continued
right fill 1994. It is only recently that the hype surrounding the virus has died down.
DISKWASHER
 The DiskWasher virus, so named because it contains a message having the term
'DiskWasher', is a highly destructive virus that was first noticed in India in the latter part
of 1993.
 The virus would wait until the disk has been accessed a specific number of times and
would then proceed to low-level format of the hard disk.

PAGE-19
FCIT UNIT-03

 During the formatting process, the virus displays the text 'From DiskWasher with love'
repeatedly on the screen. Since the virus only waited for around 5000 accesses before
proceeding to format the disk, in most cases, the virus destroyed the data on the disk
even before it had a chance to spread.
 In fact, the virus was so destructive that it formatted itself out of existence and today is
rarely found in the wild. All anti-virus software created from 1994 onwards detect and
remove the 'Disk Washer' virus.
C-BRAIN
 Amzad and Basit two pakistani brothers developed this virus in January 1986. However,
it is not certified that this virus was created by the two brothers. It is considered because
the virus contained the true address of those two brothers. Its purpose was to
discourage people from buying software illegally.
 It is supposed to be the first virus of the world. Additionally, it was the most popular
virus among all viruses which had infected lacs of computers. It was a boot-sector virus.
MACMAG
 The particular thing about this virus was that it didn't appear to be a virus. It ended on
your monitor with a peace message. One more specific thing about this virus was that
it infects, only Apple macintosh computers Richard Bramdow is supposed to be the
fatch of this virus.
 Richard Macmag is the publisher of a magazine and the virus was named after this
magazine. It did cause much damage but the terror which it had created, wasted some
time resulting in some loss.
JENUSALEM
 This virus was first found in Hebrew university Jerusalem. Therefore, it was named
Jerusalem. It got active only on fridays.
 It was a very dangerous virus. This virus used to delete all those files on which work was
performed on fridays. It destroyed executable files with the extensions .com and exe.
COLUMBUS
 Columbius virus is also known as Datacrime and 13 October. It was named 13 October,
as it became active on all the infected computers only on 13 October 1989. It, like
Jerusalem, infected the executable files and destroyed the data on the hard disk.

PAGE-20
FCIT UNIT-03

TYPES OF COMPUTER VIRUS


Viruses can be classified into many categories. They are classified as follows on the
basis of their style of affecting the computer system -
BOOT SECTOR VIRUS
 These types of computer viruses get themselves stored in the boot sector of floppy and
hard disk. When we boot a computer system it hinders the loading of operating system.
If somehow Operating System becomes operative, then it starts affecting the other
storage devices of the computer.
PARTITION TABLE VIRUS
 These kinds of viruses affect the partition table of hard disk but do not affect the data
in the computer. It only affects MBR - Master Boot Record of the hard disk which may
have following consequences:
o This virus executes itself on the high priority place in MBR.
o It decreases the capacity of RAM.
o It affects the I/O stream of disk which leads to the malfunctioning of I/O programs.
FILE VIRUS
 This kind of virus gets associated with executable files. When an EXE file is executed,
virus also executes to affect the computer system.
STEALTH VIRUS
 A stealth virus is a computer virus that makes every effort to conceal its presence from
the user. The techniques range from hiding the increase in size of an infected file from
the user, all the way to infecting the disk in multiple areas so that simply removing the
infection from one area does not actually remove the virus.
POLYMORPHIC VIRUS
 A polymorphic virus is one that is capable of changing itself so that each infection of
the virus is completely different from the original. It is very difficult to check such viruses
since every time they are completely different.
MACRO VIRUSES
 A macro virus is a virus specially meant to infect specific type of file such as document
file and spreadsheet file. Micro viruses disguised as macro (a special program containing
set of commands for execution of a particular task in the very softwares), can damage
data when used.

PAGE-21
FCIT UNIT-03

RELATED CONCEPTS
Apart from real computers viruses, there are some virus like programs which damage
the system, though they do so differently. Therefore, we must know about these
concepts.
TROJANS
 A 'trojan' is a program that claims to do something useful or interesting, but in effect
does something harmful (like formatting the hard disk) when actually runs.
 Some trojans do not perform their action immediately but delay their harmful act based
on the specific situation (like a date or when the hard disk becomes half-full).
 Since a trojan never duplicates itself, it cannot be said to be a computer virus. However,
since a trojan performs potentially harmful activity and since it is easier to write a trojan
than an actual virus, plenty of learner virus writers create trojans instead.
 In some cases, trojan programs have been used as a 'dropper' to actually release a new
virus when run.
 To persuade users to utilize the trojan, the program is usually attributed to a known
computer expert or a well-known computer program.
 Examples of trojans include the recent PKZ300 trojan that many users downloaded from
the Internet, thinking it to be the latest version of the popular PKZIP program.
BOMBS
 A bomb is a routine hidden inside a normal program that can intentionally cause it or
other programs to malfunction under certain conditions. Bombs can be inserted by an
angry employee or as a prank.
 One common example quoted is that of a company inserting code into its programs so
that if a pirated copy of it is used, the code would delete the pirated copy from the hard
disk.
 Just like viruses and trojans, bombs are also despised by the computer user community
due to the potential danger involved.
 An ANSI bomb or a Letter bomb is a displayable text material that contains ANSI key
redefinition codes that reprogram the keys to perform harmful activity.
 ANSI codes are given by displaying certain escape sequences to the screen. Therefore,
the key redefinition can take place by simply displaying the text material on the screen
say by using the 'TYPE' command.
 For example, an ANSI bomb could redefine the F3 key to a format command and the
user pressing the F3 key would cause the disk to be formatted.

PAGE-22
FCIT UNIT-03

WORMS
 A 'worm' is similar to a virus in the sense that the worm propagates by duplicating itself.
The difference is that while a virus infects other executable files, a worm usually exists
as a standalone program.
 The best example was the 1988 Robert Morris Worm program that was executed on one
or more hosts connected to the Internet.
 This program proceeded to collect the host, network, and user information and then
utilizing this information, broke into other machines.
 After breaking in, the program would attempt to replicate itself and the copy would also
attempt to infect other systems in a similar manner. While this Worm was not written
with malicious intent, it had an undesirable side effect.
 The infected systems became overloaded with running processes as they became
repeatedly infected that, as time went on, some of these machines were unable to
continue with any further processing and had to be shut down.
EMAIL-HOAXES
 A new kind of hoax is being perpetrated among the Internet community in general. By
1994, the non-technical computing users on the net had increased enormously.
 The easy availability of information, combined with the gullible non-technical users who
were online, led to the creation of the e-mail hoax.
 The concept of an e-mail hoax is simple. Somebody sends out a mail, warning users
about a new kind of virus and asks users to tell all their friends about it. The mail may
also contain technical information which manages to just about sound plausible and
also quote some kind of authority to persuade the user regarding the authenticity of
the mail.
 The unsuspecting user immediately decides to inform his friends about it. Assuming
every user on an average sends out 5 copies of the letter, it is quite easy to calculate
that after around 10 cycles, the number of mails being sent would amount to 510 letters
or 9765625 letters.
 Imagine the enormous waste of time and money involved! And, sooner or later, friends
who received the mail from other sources would start sending you the mail resulting in
multiple copies of the same mail tying up your mailbox.
 In short, any E-mail that informs you about a virus and asks you to inform all your friends
about it is most likely to be a hoax.
COMPANIONS
 Companions is a harmful program, it does not damage executable files, on the contrary,
it creates a completely different file with the same name with .com extension. When a
user executes an executable file then in place of the real file the codes of the companion
program are executed and their instructions generate harmful results after getting
activated in the computer.

PAGE-23
FCIT UNIT-03

ANTI VIRUS PROGRAMS


 It is interesting to note that the arrival of the computer virus generated a whole
sub-industry of software development concentrating on providing software
antivirus tools to the user.
 It is also interesting to note that most users prefer to think that it is the antivirus
guys who themselves create and release viruses. After all, aren't they the ones who
profit?
 In fact, most antivirus personnel know perfectly how harmful a virus is, and the
potential for damage involved, and would refrain from doing any such thing.
However, every industry has its black sheep and it is indeed possible that all antivirus
personnel’s may not have the same high moral standards.
 Most antivirus personnel’s have accumulated highly specialized knowledge about
viruses; so, they admittedly have the knowledge to churn out highly complicated
viruses.
 However, it should also be noted that most of the viruses that are crop up by the
dozen are actually quite simple viruses or variants of existing ones. This just confirms
belief that most viruses are actually created by people who are learning assembly
language and do not realize the problems that their creations can actually cause.
 PREVENTERS AND CHECKSUMMERS
 One category of antivirus programs deals with preventing the virus from entering the
system. The notion is that if the system cannot be infected, viruses will never spread.
 These preventers work either by scanning for specific virus signatures during program
execution or by looking for virus like behavior.
 While the benefits of having a preventer is unquestionable, this type of approach has
many inherent drawbacks.
 A preventer takes up memory for its own use, slows down the system (since it scans
for viruses during program execution) and may not catch the newer viruses.
 However, this type of approach is useful as a short-term remedy to completely get rid
of a persistent virus infection.
 Most of the antivirus packages come along with a prevention program that is capable
of defecting the virus before the system becomes infected.
 For example, Nashot Antivirus package comes with the 'NashMem' preventor.
 CheckSummers are used to report the change in contents of executable files in the
system.
 When a new virus infects the system, it has to necessarily make modifications either
to the system areas (boot/partition sector) or to the executable files present in the
system.
 The CheckSummer keeps track of a CheckSum or CRC ( Cyclic Redundancy Check )
associated with each executable file and informs the user when a change happens.

PAGE-24
FCIT UNIT-03

 Unlike Preventors, CheckSummers do not prevent the infection from taking place, but
they do help to keep track of any unauthorized modification to executable files and
system areas by a virus.
 In short, a CheckSummer can only inform the user about the modification that have
happened. CheckSummers are not perfect since some of the newer stealth viruses
have the ability to filter themselves out of the files when they are being CheckSummed.
Most preventors also include some sort of CheckSumming facility.
 SCANNERS
 Scanner programs check for the presence of virus signatures either in memory or
program files and can tell you if your system is infected or not.
 Most scanners perform both a memory and a file scan. Scanners do not remove virus,
they merely report the presence of the infection.
 As a result, some antivirus companies give away their scanning software as freeware,
so that the user would be able to evaluate the product.
 Of course, if you want to remove an infection, you will have to buy the product.
 Most scanners merely check for the presence of the virus signature in the files.
 Some scanners also include heuristic scanning - which is also capable of detecting
most new viruses.
 However, all scanners which support the heuristic method of scanning also pop up a
warning message about possible misdetections.
 Since the signature being scanned for is merely a set of bytes, it is entirely possible
that the same set is present in memory or in a file as possible data or even code
statements.
 Seeing the set of bytes (i.e., the signature) the scanning program will misreport it as a
virus infection. This is referred to as a 'false positive' match in the antivirus community.
Examples of scanners include Scan by McAfee and NashScan by Nashot.
 REMOVERS
 If any computer system is affected by virus then there are remedies to wash off the
virus.
 These are special computer programs or software which are used to detect virus by
scanning the whole system, and later repairing it by removing the viruses.
 These are called anti-virus programs. The most popular anti-virus program is NORTON
ANTI VIRUS or NAV in short.
 NORTON ANTI - VIRUS (NAV)
 It is a very powerful software which can detect and remove almost every kind of
computer virus.
 It can also check the virus from Internet through e-mail.
 If this anti-virus is executed with the booting and kept remain executing till the
computer is on, it checks the virus from being executed as and when a file is received
or executed.
 It filters all incoming files through e-mail to stop them entering computer system.

PAGE-25
FCIT UNIT-03

Communication and IT CHAP-03

INTRODUCTION
 Computer is the creator of information, but this information cannot be useful for
the human being unless and until they are exchanged.
 Going back to the previous centuries we know sending information took time
much more than today.
 Today it takes not only very less time but it is very much convenient too. Satellite
and television have changed the world into a village.
 We have a number of options to communicate our messages and exchange our
ideas. They are as follows :
1. Letter
2. Telephone
3. Fax
4. Telegram
5. Internet
6. Telex etc.
 Internet is such a powerful medium which can communicate our messages as well
as exchange our views across the world in a very short period of time and at a very
low cost.
 Today, large scale factories, companies and offices are opening all over the world.
These companies and factories consist of several departments, all rely on each
other.
 All the departments are equipped with computers in order to perform the
operations at the earliest possible. But information takes a lot of time in getting
communicated.
 For example, a factory has departments like purchase, sale, store and accounts. In
this case the department of accounts should have information related to purchase
and sale.
 The same way sale department should be aware of the store. Here, performance
of work depends upon the speed of information.
 Speedier the information, earlier the work will be. The most powerful medium in
this way is computer network.
 Computer network can keep you update to a second.

PAGE-26
FCIT UNIT-03

COMPUTER NETWORK
 Nowadays, computerized system of working is replacing manual system of
working. In the computerized system, interconnection of different computers with
the help of any medium is called computer network.
 With the help of computer network data can be exchanged mutually.
 Computer network works according to a protocol which can be removed if any
problem occurs in data transmission.
 Computer network is a useful system in which multiusers can use the same data
and information collectively. Software programs can also be shared on computer
network.

 Likewise, on computer network, the computer devices, such as- disk, printer and
microprocessor can be shared.
 Therefore, a computer network stands for using internally connected computers
and devices in a group.
 Computer network can be defined by the following criteria :
1. Devices share data and information with the help of a group communication
medium on network.
2. Network provides with the facility to check unauthorized users.
3. Network contains a particular address so that sent data from a device should
reach the concerned device only.
 Computer network includes mainframe, personal computer and various other
communication devices.

PAGE-27
FCIT UNIT-03

COMMUNICATION PROCESS
 Communication chiefly aims at exchanging data and information.
 Data communication is meant by exchanging data between two different or
similar devices.
 Effects of data communication can be illustrated by three main properties.
 Delivery – Delivery means sending and receiving data from one place to the other.
 Accuracy – The property ensures reliability and accuracy of data.
 Timeliness – This ensures delivery of data at right time.
 Communication process comprises five factors.
1. Message
2. Sender
3. Medium
4. Receiver
5. Protocol
 The picture below illustrates communication process.

COMMUNICATION TYPES
 Communication media are classified on the basis of directions of data
transmission.
 In communication media, data are transmitted at a time in one direction or both
directions.
 On this basis, it can be classified into three classes – Simplex, Half Duplex and Full
Duplex.

PAGE-28
FCIT UNIT-03

1. SIMPLEX
 In this state of transmission, data or signals get transmitted in one direction.
 For example, by computer connected keyboard, data is transmitted only from
keyboard to computer. Therefore, Two-way transmission of data requires two
lines. Though simplex line is cheaper, it is inappropriate for computer-based
communication.
 Computer based communication specially requires Two-way communication.
Even with the devices like printer, in which data are transmitted one way, it is
inappropriate.

2. HALF DUPLEX
 In this state, transmission is possible in two directions but at one time transmission
is done in one direction only.
 For example, from a hard disk, data are exchanged in a half-duplex state.
 When data are saved onto hard disk, data cannot be read from hard disk likewise
while reading data, it cannot be saved onto that.

3. FULL DUPLEX
 Full Duplex lets data transmit in both directions. Special purpose telephone lines
avail this facility.
 Computer to computer hardware communication uses full duplex state.
 In this state, a lot of data transmission takes place same time in both direction.

PAGE-29
FCIT UNIT-03

TRANSMISSION MEDIA
 In this medium, computers are connected to a network or they are inter-
connected using metal wire or optical fiber of glass. Physical connections are of
three types:
1. TWISTED WIRE PAIRS
 This is a cheaper communication medium. It is a pair of intertwisted wires in which
both wires are also made up of strands of metallic thin wires.
 Twisted pair is made up of two copper conductors. Each conductor is with plastic
electric insulation and are twisted together.
 One of them is used to take signal to the receiver and the second one is used for
ground reference. The receiver uses the difference between the two.
 Apart from the signal sent by the wire, noise and other sounds can affect both the
wires and unwanted signals are created.
 If both the wires are parallel, the effect of this unwanted signal is not same on both
the wires.
 As both are on different locations with respect to noise and cross talk. It means one
is wire is nearer to noise and cross-talk while the other one is a bit away from it which
may create difference between the signals obtained by the receiver.
 When the wire pair is twisted a balance is restored. Suppose in a twisted state one
wire is close to the noise and the other one is far and in the next twist condition, it
is reverse.
 Because of the twist, both the wires are equally affected by an external effect (noise
or crosstalk). It means the receiver calculating the differences between the both gets
two unwanted signals.
 The unwanted signals are mostly cancelled. It is now clear that the number of twists
per unit affects the quality of the table.
 Unshielded twisted pair is the most used twisted pair wire. RJ45 is the most popular
UTP connector.
 This is mostly used in telephone line. Modem also uses this wire to get computer
connected with a telephone line.

PAGE-30
FCIT UNIT-03

2. CO-AXIAL CABLE
 In this medium, copper wire is fixed in the center of a metallic axial and there is a
layer of bad conductor matter in the center of both.
 Co-axial cables are used to send higher frequency signal than that of twisted pair
cable.
 It is so because both mediums have been prepared in a different way. Instead of two
cables, co-axial cable has a central conductor of a solid or standard cable, mainly
made up of copper and is covered with electric-insulation care that is wrapped with
metal foil, stripe or with conductor of both metal foil and stripe.
 The metal cable being wrapped on the outside protects the cable from external noise
and acts as the second conductor which completes the circuit.
 Even this external conductor is covered with electric-insulator and the entire cable is
covered with plastic. Twisted wire, at times interrupts communication and double
voice is heard while talking on telephone.
 To solve this problem co-axial cable has been devised. It is used in very sensitive
communication in which interruption may cause communication badly like cable
connection to television.

3. FIBRE OPTIC CABLE


 This is a modern technique of communication media. This cable is made up of
thousands of thin strands of glass in which light can travel. Each strand is thin like a
hair.
 In this, for transmission, data is converted into light pulses and this light pulse of
data is transmitted with the speed of crores bits per second by a laser device. Each
strand is called a fiber.
 Hair like one fiber can send some television signals and thousands of telephone line
signals. Fiber optic cable is smaller and lighter than co-axial cable. It is easy to use.
 Transmission is interrupted at the joints of two co-axial cables while fibre optic joints
are not even visible as after joining two fiber optic wires it becomes one as it is
sticken.
 In fiber optic, the capacity of data transmission is ten times more than co-axial cable.

PAGE-31
FCIT UNIT-03

 Co-axial cable weighs twenty times more than fiber optic cable. In fiber optic cable
data transmission is in condition which does not have any chance of interruption.
Hence, bit error in data transmission is zero.
 Electro-magnetic transmission of data has more errors and transmission is not clear.
Only three types of connectors are available for Fiber Optic Cables.
 Subscriber channel connectors are used for Cable TV. It uses Push Pull Locking
system. Straight Tip connectors are used to connect the cable with networking
device.

COMMUNICATION CHANNELS/MEDIA
Data transmission between two devices is done in two ways:
1. PARALLEL TRANSMISSION
 Parallel transmission organizes binary data in a group of bits and transmitted
altogether. As we speak a word getting letters together, the same happens in parallel
transmission.
 In parallel transmission, each bit uses one wire to send one bit. 8-bits transmission
requires 8 wires as shown in the figure.
 Parallel transmission possesses the advantage of speed. It transmits faster than serial
way of transmission but it is costlier than that.

PAGE-32
FCIT UNIT-03

2. SERIAL TRANSMISSION
 Serial transmission communicates data bit after bit as it is in 9 queues.

 It is cheaper than parallel transmission. It is of two ways :


 Asynchronous Transmission
o In this Data transmission, stop bit and start bit are added to data. It is just to
inform the receiver about the start and end of the byte. Bytes are used for data
transfer in this type of transmission as shown in the figure

 Synchronous Transmission
o In this very transmission, data are in frames consisting of different sets of
bytes. Receiver separates the bytes from the frame. Synchronous Transmission
has been illustrated in the figure

MODEM
 It stands for Modulation and Demodulation. It converts digital signals to analog
ones and vice versa.
 Digital symbols cannot be passed on analog phone lines therefore digital symbols
(1 and 0) are converted into analog symbols.

PAGE-33
FCIT UNIT-03

 This process is called modulation. The same way, analog symbols can't be sent on
digital mediums, therefore analog symbols are turned into digital symbols. This
process is called De-modulation.
 There is a device to perform both the process- Modulation and Demodulation
which is called Modem. Modem is the short form of Modulation and
Demodulation.
 Modem is useful even when signals are weak because modem enhances speed of
data signals for data transmission at distant places. It increases the speed before
transmission of data signals.
 Today, fiber optic modem are also available which can convert digital signals into
optical signals which can make data communication in Fiber Optic Cables possible.

 CHARACTERISTICS OF A MODEM
 There are two most important characteristics of a modem. They are transmission
speed, error detection and correction and compression. All three characteristics are
being discussed ahead-
 Transmission Speed
o Modems are available in different transmission speeds, which are measured in
bps (bits per second)
o Standard modems speeds are 9600 bps, 14400 bps, 28000 bps, 33600 bps,
56800 bps.
 Error detection and correction
o Nowadays most of the modems support advanced error detection protocols
at the hardware level.
o Detection and correction is achieved using such protocols as:
 Microcom Networking Protocol (MNP) – a protocol developed by
Microcom. It was developed to detect, and correct, errors resulting from
noisy telephone connections.
 ITU-T (International Telecommunications Standardization Sector) is a
home for various other protocols, known for their names which start
with a V (otherwise known as the V-Dot Standards) eg. V.34: An error
control standards for 28800 baud modems/ 14400 baud faxes.

PAGE-34
FCIT UNIT-03

 Compression
o Due to the low transmission speeds achieved by modems, most modems
support a variety of data compression protocols.
o Using these protocols, the data throughout can rise by an average of 50%.

 TYPES OF MODEM
 There are mainly three types of modems. They are being discussed ahead.
 EXTERNAL MODEM
o External modem is a box that keeps modem circuitry outside the computer
system.
o This is connected to a computer system using a serial port, universal serial Bus
or a firewire port and connected to a telephone line with a standard telephone
jack.
o This kind of modem is on the verge of disappearance from the market.
 INTERNAL MODEM
o Internal modem is a circuit board that is plugged into an expansion slot of the
computer system.
o Internal modem has one advantage that it does not occupy any space on the
desktop however, uses one expansion slot.
o Nowadays, modems are coming in the form of PC cards. This kind of modem
is used with wireless or mobile phones and provide wireless transmission.
 FAX MODEM
o Using fax modem you can send a fax from your computer as well receive a fax
from others.
o You can exchange faxed information from other fax modems or machines from
other ends.
o This has got one advantage that you can edit faxed information after
converting them into files using an appropriate software.

PAGE-35

You might also like