Friday, April 12, 2013

Unit I - Optional I Computer Science



Unit I
A computer is a machine that manipulates data according to a set of instructions.

Types of Computers:
Based on operational principle, computers can be classified as
  • Analog computers
  • Digital computers and
  • Hybrid computers

Analog Computers
Analog computers use continuous variables for mathematical operations. They are mainly used to solve manufacturing, design and scientific problems. These computers have to be constructed to perform only specific tasks.
Digital computers
            The Digital computers work on the principle of binary digit system such as “0” and “1”. They are useful for evaluating arithmetic expressions and manipulation of data. The speed is very high when compared with analog computers.
Hybrid computers
These types of computers are the combination of both Analog and Digital computers. In the hybrid types of computers the digital segments perform process control by conversion of analog signals to digital ones.
            Based on Capacity, speed and reliability computers can be divided into three categories. They are
Mainframe Computer
These are computers used by large organizations like meteorological surveys and statistical institutes for performing bulk mathematical computations.
Microcomputer
            These are the most frequently used computers known as “Personal computers”. This is meant for public use. Other than Desktop Computer the choice ranges as follows:
·         Personal Digital Computer
·         Tablet PC
·         Towers
·         Work Stations
·         Laptops
·         Hand Held Computer
Mini computer
            Mini computers like the mainframe computers are used by business organization. The difference being that it can support the simultaneous working of up to 100 users and is usually maintained in business organizations for the maintenance of accounts and finances. Minicomputers lie in between mainframes and microcomputers.

A computer is an electronic machine that accepts information, stores it until the information is needed, processes the information according to the instructions provided by the user, and finally returns the results to the user. 

Functional Units of a Computer System
            Digital computer systems consist of three distinct units. These units are as follows:
Input unit
Central  Processing  unit and
Output  unit
Input Unit
            A computer must receive both data and program statements to function properly and be able to solve problems. The method of feeding data and programs to a  computer  is accomplished  by  an  input  device.
            Computer input devices read data from a source, such as magnetic disks, and translate that data into electronic impulses for transfer into the CPU. Some typical input devices are a keyboard, a mouse, or a scanner.
Central Processing Unit
                The brain of a computer system is the central processing  unit  (CPU).  The  CPU  processes  data transferred to it from one of the various input devices. It then transfers either an intermediate or final result of the CPU to one or more output devices.
            It consists of a control section, an arithmetic-logic section, and an internal storage section (main memory).
Control Section
            The Control Unit (CU) is the circuitry that controls the flow of information through the processor. It also maintains order within the computer.
Arithmetic and Logic Section
The arithmetic-logic   section   performs   arithmetic operations,   such   as   addition, subtraction, multiplication, and division.  Through internal logic capability, it tests various conditions encountered during processing and takes action based on the result.
Main Memory
            Main memory holds instructions, programs and data for execution. Memory is also known as primary memory and internal storage. The main memory of the computer is also known as RAM (Random Access Memory).
            This is the part of the computer that stores operating system software, software applications and other information for the central processing unit (CPU) to have fast and direct access when needed to perform tasks.When power is lost, the information is lost.
Output Unit
            It is a unit which delivers information from the computer to an external device or from internal storage to external storage. Output unit is anything that sends a signal out of the computer.
            A printer is a output unit and it is a peripheral which produces a hard copy (permanent readable text and/or graphics) of documents stored in electronic form, usually on physical print media such as paper or transparencies.
Classification of computers
            Computers are classified according to their data processing speed, amount of data that they can hold and price. Depending upon their speed and memory size, computers are classified into following four main groups.
  1. Supercomputer.
  2. Mainframe computer.
  3. Mini computer.
  4. Microcomputer.
Supercomputer
            Supercomputer is the most powerful and fastest, and also very expensive. It was developed in 1980s. It is used to process large amount of data and to solve the complicated scientific problems. It can perform more than one trillions calculations per second. It has large number of processors connected parallel. So parallel processing is done in this computer. In a single supercomputer thousands of users can be connected at the same time and the supercomputer handles the work of each user separately. Supercomputer are mainly used for:
  • Weather forecasting.
  • Nuclear energy research.
  • Aircraft design.
  • Automotive design.
  • Online banking.
  • To control industrial units.
Mainframe Computers
            These are also very expensive. The mainframe computer specially requires a very large clean room with air-conditioner. This makes it very expensive to buy and operate. It can support a large number of various equipments. It also has multiple processors. There are basically two types of terminals used with mainframe systems. These are:

i) Dumb Terminal    
            Dumb terminal does not have its own CPU and storage devices. This type of terminal uses the CPU and storage devices of mainframe system. Typically, a dumb terminal consists of monitor and a keyboard (or mouse).
ii) Intelligent Terminal
            Intelligent terminal has its own processor and can perform some processing operations. Usually, this type of terminal does not have its own storage. Typically, personal computers are used as intelligent terminals.
            The mainframe computers are specially used as servers on the World Wide Web. The mainframe computers are used in large organizations such as Banks, Airlines and Universities etc.
Minicomputers
            These are smaller in size, have lower processing speed and also have lower cost than mainframe. These computers are known as minicomputers because of their small size as compared to other computers at that time. The capabilities of a minicomputer are between mainframe and personal computer. These computers are also known as midrange computers.
The minicomputers are used in business, education and many other government departments. Although some minicomputers are designed for a single user but most are designed to handle multiple terminals. Minicomputers are commonly used as servers in network environment.
Microcomputer
            The microcomputers are also known as personal computers or simply PCs. Microprocessor is used in this type of computer. These are very small in size and cost. The IBM’s first microcomputer was designed in 1981 and was named as IBM-PC. The most popular types of personal computers are the PC and the Apple. Personal computers are available in two models. These are:
  1. Desktop PCs
  2. Tower PCs
Microcomputers are further divided into following categories.
  1. Laptop computer
  2. Workstation
  3. Network computer
  4. Handheld computer
1. Laptop computer
            Laptop computer is also known as notebook computer. It is small size (85-by-11 inch notebook computer and can fit inside a briefcase. The laptop computer is operated on a special battery and it does not have to be plugged in like desktop computer. The laptop computer is portable and fully functional microcomputer.
            The memory and storage capacity of laptop computer is almost equivalent to the PC or desktop computer. It also has the hard dist, floppy disk drive, Zip disk drive, CD-ROM drive, CD-writer etc. it has built-in keyboard and built-in trackball as pointing device.
2. Workstations
            Workstations are special single user computers having the same features as personal computer but have the processing speed equivalent to minicomputer or mainframe computer. A workstation computer can be fitted on a desktop. Scientists, engineers, architects and graphic designers mostly use these computers.
            Workstation computers are expensive and powerful computers. These have advanced processors, more RAM and storage capacity than personal computers. These are usually used as single-user applications but these are used as servers on computer network and web servers as well.
3. Network computers
            Network computers are also version of personal computers having less processing power, memory and storage. These are specially designed as terminals for network environment. Some types of network computers have no storage.The network computers are designed for network, Internet or Intranet for data entry or to access data on the network.
4. Handheld computer
            These computers are also referred to as Palmtop Computers. Because of its reduced size, the screen of handheld computer is quite small. Similarly it also has small keyboard. Some handheld computers have a specialized keyboard. The examples of handheld computers are:
¨      Personal Digital Assistance
¨      Cellular telephones
¨      H/PC Pro devices
Personal Digital Assistance - A PDA provides special functions such as taking notes, organizing telephone numbers and addresses. Most PDAs also offer a variety of other application software such as word processing, spreadsheet and games etc.
            Some PDAs include electronic books that enable users to read a book on the PDA’s screen. Many PDAs are web-based and users can send/receive e-mails and access the Internet.
            The primary input device of a PDA is the stylus. A stylus is an electronic pen and looks like a small ballpoint pen. This input device is used to write notes and store in the PDA by touching the screen. Some PDAs also support voice input.
Cellular telephones - A cellular phone is a web-based telephone having features of analog and digital devices. It is also referred to as Smart Phone. A cellular phone also provides the functions to receive and send e-mails & faxes and to access the Internet.
H/PC Pro devices - These devices have features between PDAs and notebook PCs. The H/PC Pro device includes a full-size keyboard but it does not include disk. These systems also have RAM with very low storage capacity and slow speed of processor.
Computer software
¨      A set of instruction given to the computer to solve user  problems and to control different operations of computer is known as computer software.
¨      A set of programs and instructions are written by the user is called software.
¨      For eg:  tally, ms-office, oracle, java,  vb  etc.
¨      A software package is a group of programs which solve a specific problem or perform a specific type of job.
¨      For eg: word processing package may contain programs for text editing, text formatting, drawing graphics, spelling checking etc.
Software can be divided into two major categories.
¨      Application software
¨      System software
   Application software:
¨      A set of program used to solve a particular problem of user through computer is called application software.
¨      It is also known as application package.
¨      The ready packages are also available in market on CDs for various purpose.
¨      The user solve their problem by using ready packages more easily and quickly.
Some of the application packages are:
¨      Word processing software
¨      Database management system software
¨      Graphics software
¨      Entertainment software
Word processing software:
This software is used to create and edit document such as letter, essays  etc. word processing  software provides several features for document editing and formatting.
Eg:  Microsoft word
Database management system software:
This software is used to create and manage database .  A database is a collection of related information or records. DBMS is stores and manage records in database.
Eg: Microsoft access and oracle is an eg of  DBMS.
Graphics software:
It is used to create slides for making presentation .
Eg: power point  presentation.
Entertainment software:
It allows a computer system to be used as an entertainment tools.
Eg: video games is an eg for entertainment software.
System software:
¨      System software is a set of programs that controls the operations of computer and devices attached with the computer.
¨      It creates link between user and computer as well as controls the execution of application program.
¨      Without these software no link can be created with user and computer.
The examples of system software are:
¨      Operating system software
¨      Communication software
Operating system software:
Every computer has an operating  system  software which takes care of the effective and efficient utilization of all hardware and software components of the computer system.
Communication software:
In a network environment  communication software enables transfer of data from one computer system to another.
Input device
            An input device is used to transfer information into the computer. Computer input devices are accessories that control how a computer processes information. A computer input device sends data to the computer.
           
            An input device is any peripheral used to provide data and control signals to an information processing system (such as a computer). The first input devices were punch cards and later keyboards.
           
            Input devices are the accessories that give the computer's central processing unit (CPU) data with which to work. The CPU processes the information and then displays results to the user. 

Keyboard
            The keyboard is the primary device for inputting information to a computer. It operates by converting key presses to electronic signals in binary digital form. The typical computer keyboard has the standard character keys found on a typewriter together with a number of special keys.
·         Function keys which can be programmed by the user or by the software being run, so that a single key depression sends a command or string of commands to the computer.
·         The CTRL and ALT keys (short for Control and Alternate), which are always used in conjunction with other keys to issue commands to the computer.
·         The Backspace key, which delete the character to the immediate left of the cursor on the screen.
·         The four arrow keys, which move the cursor one character position in the direction of the arrow.
·         The PageUp and PageDown keys, which are normally programmed to move the cursor one page up or down.
·         The Home key, which may be programmed to move the cursor to the left of the screen or the beginning of the document.
·         The End key, which may be programmed to move the cursor to the right of the screen or the end of the document.
·         The Esc key, which is often programmed to enable the user to escape from the currently selected option.
Mouse
            The mouse is the most common pointing device and contains one or more buttons with which a user can interact with an application.
            With the introduction of graphic user interfaces (GUIs), the mouse acts as an input device. Mice allow the user to control an on-screen pointer, called a cursor, which commonly looks like an arrow. When the arrow is properly positioned, the user can use it to perform various tasks by pressing buttons on the mouse

Move
Moving the mouse, which moves the pointer in the interface.
Press
Pressing and holding down a mouse button. A press can initiate an action, such as dragging an object to a printer icon.
Press and move
Pressing a mouse button without releasing it and then moving the position of the pointer, such as moving an element (like an icon) across the screen.
Release
Releasing a mouse button after pressing it. Releasing the mouse button performs an action initiated by pressing it, such as activating a push button.
Click
Pressing and releasing a mouse button without moving the pointer. Clicking a mouse button can perform an action such as activating a menu item.
Double-click
A double-click performs the default action of a control. The time interval between clicks can be user defined.
Multi-click
Performing a number of clicks in quick sequence.
Double-press
Performing one click followed by a press in quick sequence without moving the pointer.
Multi-press
Performing a number of clicks followed by a press in quick succession without moving the pointer
Joysticks
            Joysticks are most commonly used when playing games. Originally, they consisted of a single movable stick and a button or two, allowing the user to control a game character's movements. Modern joysticks group a number of sticks and buttons together, allowing the user to control complex movements with a couple of finger flicks.
Touch screens
            Touch screens are used by touching the display area with either a finger or stylus. It enables one to interact directly with what is displayed, rather than indirectly with a cursor controlled by a mouse or touchpad. Also,it lets one to do operations without requiring any intermediate device that would need to be held in the hand. They can be found on PDAs, mobile phones, video games and tablet PCs.
Uses
¨      Dusty, dirty or wet environments where a keyboard would be damaged e.g) Factory floors
¨      Hazardous environments where there may be any chance of a spark e.g) Chemical plants
¨      Constricted areas where there is no room for another input device e.g) Satellite Navigation system on a car dashboard
¨      Hygienic environments where it must be simple to wipe clean e.g) urgical theatres
Touch pad
            A touch pad (also trackpad)  is a device for pointing (controlling input positioning) on a computer display screen. It is an alternative to the mouse. It consists of specialized surface that can translate the motion and position of a user's fingers to a relative position on screen.Originally incorporated in laptop computers, touch pads are also being made for use with desktop computers. A touch pad works by sensing the user's finger movement and downward pressure.
            The first touch pad was invented by George E. Gerpheide in 1988. Apple Computer was the first to license and use the touch pad in its Powerbook laptops in 1994.
Magnetic Ink Character Recognition
            The acronym MICR stands for Magnetic Ink Character Recognition.  This technology uses magnetically chargeable ink or toner to print the numbers and special characters on the bottom of checks or other financial transaction documents. The technology allows computers to read information (such as account numbers) of printed documents.
            It is a technique that enables special characters printed in magnetic ink to be read and input rapidly to a computer. MICR is used extensively in banking because magnetic-ink characters can be machine-read with much greater accuracy than human reading or other optical character recognition (OCR) systems, and are therefore ideal for marking and identifying the account and sort code numbers on cheques.
           
Optical Mark Reader OMR
            A special scanning device that can read carefully placed pencil marks on specially designed documents. OMR is frequently used in forms, questionnaires, answer-sheets.
            The Optical Mark Reader will be referred to as the scanner or OMR. The computer test forms designed for the OMR are known as NCS compatible scan forms. Tests and surveys completed on these forms are read in by the scanner, checked, and the results are saved to a file. This data file can be converted into an output file of several different formats.
 













Advantages
¨      Good for inputting large volume of data at low cost.
¨      Very little training or instruction required to use.
¨      Good for multi-choice questionnaires
¨      A quick and reliable way of inputting large volume of simple data
Disadvantages
¨      Can only input a limited data set
¨      Poorly marked forms/cards cause errors.
¨      Creased/folded forms cause errors
¨      It can't be used for bulk text/numbers input.
Barcode reader
            A barcode reader (or barcode scanner) also called a price scanner or point-of-sale ( POS ) scanneris an electronic device for reading printed barcodes. A barcode reader consists of a scanner, a decoder and a cable used to connect the reader with a computer. Because a barcode reader merely captures and translates the barcode into numbers and/or letters, the data must be sent to a computer so that a software application can make sense of the data.
            A barcode reader works by directing a beam of light across the bar code and measuring the amount of light that is reflected back. The scanner converts the light energy into electrical energy, which is then converted into data by the decoder and forwarded to a computer.
Scanner
            Scanners are devices that receive images from documents like images or paper. The scanner runs over the colours and writing on the paper, and the device sends it to the computer. Users normally have custom software that is included with the scanner. This software displays the images that were taking from the scanner's surface.

            Scanners work much like photocopiers. A digital image of the document is created that can be saved in the computer's memory, then printed or saved. This is an image, and must be edited in a graphics program. To convert this image to text for manipulation in a word processor, OCR (optical character recognition) software is needed
to make the conversion.
Cameras
            Cameras are also a computer input device. Two types of cameras are used for input on a computer. The digital camera is a device that takes digital images and saves them to memory. The user then connects the camera to the computer where images are uploaded and saved. Web cams are the other type of camera that connects to the computer. Web cams are ways for people to take images from the computer and communicate visually with other users on the Internet.
            Any peripheral that receives and/or displays output from a computer. An output device is any piece of computer hardware equipment used to communicate the results of data processing carried out by an information processing system (such as a computer) to the outside world.
Monitor
            A monitor or display (sometimes called a visual display unit) is an electronic visual display for computers. The visual display of the processed data, which the users can view is got through the monitor.
            Computer monitors come in a variety of screen sizes with different visual resolutions. There are two types of computer monitors available, namely CRT and flat panel. All monitors rely in a video card, which is located on the motherboard to display the information. It is the video card, which processes the data into images, which is eventually displayed on the monitor.
            The display device in modern monitors is typically a thin film transistor liquid crystal display (TFT-LCD) thin panel, while older monitors use a cathode ray tube (CRT).
Printer
            A printer is an output device that produces text and graphics on paper.
The speed of a printer is measured in:
cps
= characters per second
lpm
= lines per minute
ppm
= pages per minute
            Printers can be divided into two main groups, impact printer and non-impact printer.  Impact printer produces text and images when tiny wire pins on print head strike the ink ribbon by physically contacting the paper.  Non-impact printer produces text and graphics on paper without actually striking the paper.
            Printers can also be categorized based on the print method or print technology.  The most popular ones are inkjet printer, laser printer, dot-matrix printer and thermal printer.  Among these, only dot-matrix printer is impact printer and the others are non-impact printers
Line printer
            The line printer is a form of high speed impact printer. A line printer uses a long drum imprinted with raised characters. As the drum rotates, words are formed on the page. The drum moves in a horizontal direction, printing one line at a time. Line printers have limited font availability and no graphic capability.
Advantages
¨      They are less expensive
¨      They can print large, custom-sized pages and produce carbon copies, and

¨      Easier to maintain

¨      Because of the nature of the print mechanism, line printers are much faster than dot-matrix or daisy-wheel printers;

Disadvantages

¨      They tend to be quite loud,

¨      Have limited multi-font capability, and

¨      Often produce lower print quality than more recent printing technologies.

serial printer It is a printer that prints a single character at a time. It is attached with the computer through a serial interface.
Dot Matrix printers
            Dot-matrix printer is an impact printer that produces text and graphics when tiny wire pins on the print head strike the ink ribbon.  The print head runs back and forth on the paper like a typewriter.  When the ink ribbon presses on the paper, it creates dots that form text and images.  Higher number of pins means that the printer prints more dots per character, thus resulting in higher print quality.
Advantages of dot matrix printer:
1)     Can print on multi-part forms or carbon copies
2)     Low printing cost per page
3)     Can be used on continuous form paper, useful for data logging
4)     Reliable, durable
 Disadvantages of dot matrix printer:
1)       Noisy
2)       Limited print quality
3)       Low printing speed
4)       Limited color printing
Inkjet printers
Inkjet printers are non-impact printers which print text and images by spraying tiny droplets of liquid ink onto paper.  The ink is stored in disposable ink cartridges. often a separate cartridge is used for each of the major colors. These colors are usually Black, Red/Magenta, Green/Cyan, and Yellow (CYMK).
            They are the most popular printers for home use. Ink-jet printers are capable of producing high quality print which almost matches the quality of a laser printer. A standard ink-jet printer has a resolution of 300 dots per inch.
Advantages of inkjet printers:
¨      Low cost
¨      High quality of output, capable of printing fine and smooth details
¨      Capable of printing in vivid color, good for printing pictures
¨      Easy to use
¨      Reasonably fast
¨      Quieter than dot matrix printer
¨      No warm up time
 Disadvantages of inkjet printers:
¨      Print head is less durable, prone to clogging and damage
¨      Expensive replacement ink cartridges
¨      Not good for high volume printing
¨      Printing speed is not as fast as laser printers
¨      Ink bleeding, ink carried sideways causing blurred effects on some papers
¨      Aqueous ink is sensitive to water, even a small drop of water can cause blurring
¨      Cannot use highlighter marker on inkjet printouts

Thermal printers

Thermal printers use two types of printing technologies: direct thermal and thermal transfer printing. 
            Thermal printers worked by pushing electrically heated pins against heat-sensitive paper (thermal paper).  The coating on the thermal paper turns black in the areas where it is heated, producing characters or images. 
Thermal printers are often used in cash registers, ATM and point-of-sales terminals.
Advantages
¨      Direct thermal printers have no ink, toner or ribbon. 
¨      These printers are durable,
¨      Easy to use and
¨      Cost less to print than other printers. 
Disadvantages
¨      The thermal paper is sensitive to heat, light, water, and abrasion and
¨      The text and images may fade over time.
            In thermal transfer printing, a thermal print head applies heat to a heat-sensitive ribbon, which melts ink onto paper and a wide range of materials to form text and images. The printouts can be extremely durable and can be stored over long period of time.
Programming Language
       A language is a means of communication. Similarly a programming language is used by a programmer to instruct a computer what he/she wants it to do.
       A language that is acceptable to the computer system is called a computer language or computer programming language, and the process of writing instructions in such a language for an already planned program is called programming or coding. All computer languages can be broadly classified into the following three categories:
¨      Machine language
¨      Assembly language
¨      High-level language
 Machine Language:
        Although computers can be programmed to understand many different computer languages, there is only one language understood by the computer without using a translation program. This program is called the machine language of the computer. The machine language of a computer is normally written as string of binary 1s and 0s. The circuitry of the computer is wired in a manner that it immediately recognizes the machine languages instructions, and converts them into the electrical signals needed to execute them.
      A machine language instruction normally has two-part format.
        OPCODE
    (operation code)
         OPERAND
    (Address/Location)

The first part of an instruction is the operation code, which tells the computer what function to perform, and the second part is the operand, which tells the computer where to find or store the data or other instructions, which are to be manipulated. Hence each instruction tells the computer what operation to perform, and the length and locations of the data fields, which are involved in the operation. Typical operations included in the instruction set of a computer are:
¨      Arithmetic operations
¨      Logical operations
¨      Branch operations
¨      Data movement operations for moving data between memory locations and register
¨      Data movement operations for moving data from or to one of computer's input/output device
Advantage:
¨      Programs can be executed very fast by the computer.
¨      No translation of the program is required.
Disadvantages:
¨      Machine dependent: Because the internal design of every type of computer is different from every other type of computer, the machine language also differs from computer to computer.
¨      Difficult to program. It is necessary for the programmer either to memorize the dozens of operation code numbers for the commands in the machine’s instruction set or to constantly refer to a reference card. A programmer is also force to keep track of the storage location of data and instructions. Moreover a machine language programmer must be an expert who knows about the hardware structure of the computer.
¨      Error prone. A programmer has to remember the opcodes, and must keep track of the storage locations of data and instructions it becomes very difficult for him /her to contribute fully on the logic of the program. This frequently results in programming error.
¨      Difficult to modify. It is difficult to correct or modify machine language programs. Checking machine instructions to locate errors is very difficult and time consuming.
In short, writing a program in machine language is so difficult and time consuming that it is rarely used today.
Assembly Language
       A language, which allows instructions and storage locations to be represented by letters and symbols, instead of numbers is called an assembly language or symbolic language. A program written in an assembly language is called an assembly language program or a symbolic program. Assembly language programming which was introduced in 1952 helped in overcoming some of the limitations of machine language programming in the following manner:
1. By using alphanumeric mnemonic codes, instead of numeric codes for the instruction in instruction set. For e.g. using ADD instead of 1110(Binary)or 14(decimal)for the instruction to add.
2. By allowing storage location to be represented in the form of alphanumeric addresses instead of numeric addresses. For e.g. the memory locations 1000, 1001, 1002 may be represented as FRST, SCND and ANSR respectively.
 3. By providing additional instructions called pseudo-instructions in the instruction set which are used for instructing the system how we want the program to be assembled inside the computer memory.
 Assembler:
            A computer can directly execute only machine language programs so assembly language program must be converted (translated) into its equivalent machine language programs before it can be executed on the computer. This translation is done with the help of a translated program, which is known as an assembler.
Assembler
 
                                                  Input                          Output
Assembly language program                                                    machine language program
 Advantages:
Ø  Easier to understand and use. Due to the use of mnemonics, instead of numeric op-codes, and symbolic names for data locations, instead of numeric addresses, assembly language programs are much easier to understand than machine language programs.
Ø  Easier to locate and correct errors. Programmer need not keep track of the storage locations of the data and instructions. So it is easy to write program in assembly language. Assemblers are designed to automatically detect and indicate errors for use of an invalid mnemonic op-code or a name that has never been defined.
Ø  Easier to modify. Since it is easier to understand it is easier to locate, correct, and modify instructions of an assembly language program than a machine language program.
Ø  No worry about addresses. Programmer need not keep track of the storage locations of the data and instructions while writing assembly language program.
Ø  Easily relocatable.The availability of pseudo-instructions for instructing the system how we want the program to be assembled inside the computer memory makes assembly language program easily relocatable, because their location can be easily changed by suitably changing the pseudo instructions.
Ø  Efficiency of machine language. An assembly language program is one-to-one correspondence between the instructions of an assembly language program and its corresponding machine language program. Hence leaving out the transaction time required by the assembler, the actual execution time for an assembly language program, and its equivalent machine language program will be the same.
Disadvantages:
Ø  Machine dependent. Assembly languages differ from computer to computer and an assembly language can executed only on the computer in whose assembly language it has been written.
Ø  Knowledge of hardware required. Since assembly languages are machine dependent an assembly language programmer must have a good knowledge of the characteristics, and the logical structure of his /her computer to write good assembly language programs.
Ø  Machine level coding. In case of an assembly language, instructions are still written at the machine code level. That is one assembly language instructions are substituted for one machine language instruction. Hence writing assembly language programs is still time consuming and not very easy.
Uses of computers in Education
            Computers are used successfully not only in the classroom of schools and colleges but also in the offices.
Administrative uses
            Many educational institutions computerize nearly all their operations from mailing labels to staff payroll. Computerizations of administrative functions are:
1. Office Applications
            In the offices, computers are used in filing, typing/word processing, preparing mailing for dispatch and making labels of addresses.
2. Library Applications
            In the library, computers are used for retrieval of bibliographic information, cataloguing, circulation, purchasing of books, journals etc., searching books and charging fines from students. Also databases can be prepared of the different users of library.
3. Financial Applications
            Computers are used for making budgets, auditing, accounts receivable/payable, general ledger, purchase order generation, salary schedule analysis and maintenance of student’s fees records etc.
4. Student Applications
            Computers are used to make time table for students, report cards, grade information, maintenance of attendance, students’ health and demographic records, result processing, fees statements, railway concessions cards, bio-data of students etc.
5. Personnel Applications
            Computers are used to prepare payrolls of workers, maintenance of personnel records staff assignments, leave records of teachers, health records, tax information and reporting, issuing circular to teaching and non teaching staff, maintaining bio data of teachers and non teaching staff.
6. Research and Planning Applications
            Computers are used in various research and planning applications such as bus routing, test item analysis, project planning and evaluation, budget forecasting, feasibility of opening new courses etc. In well equipped modern educational institutions like IGNOU most of these functions are performed through computers.
Academic Uses- Instructional Uses
            Before the advent of micro computers, in 1960’s and  1970’s, when computer uses were limited, instructional uses were generally classified as CAI (Computer Aided Instruction) or CMI(Computer Managed Instruction). In CAI students received some kind of direct instruction via a computer screen. Drill and practice, tutorial and simulation programs fall under this category. Now-a-days multimedia presentations, CBT’s(Computer Based Training), Internet are widely used in the field of education.
CAI (Computer Aided/Assisted Instruction)
            CAI consists of text material, test questions requiring students’ responses, additional backup instructional material and analysis of programmes. Student’s at CAI terminals can proceed through lessons at their own rate. Each terminal can evaluate specific lessons, independently of the others.
In CAI, if students cannot understand the main text, they are given access to alternative explanations. The students are provided with immediate feedback. It requires less student time.
¨      Computer Assisted Instruction is nothing but giving instructions with the help of computers.
¨      In CAI, the activity of the learner is the most important attribute.
¨      CAI is nothing but learning with computers.
¨      It can be used to impart formal and non-formal education at all levels and also in all areas
¨      CAI has been developed from the principles of Programmed Instruction
¨      It is one of the types of Individualized Instruction
¨      CAI uses a combination of text, graphics, sound and video in enhancing the learning process
CMI (Computer Managed Instruction)
Computer-managed instruction is an instructional strategy whereby the computer is used to provide learning objectives, learning resources, and assessment of learner performance. It refers to the use of a computer system to manage information about learner performance and learning resources options in order to prescribe and control individual lessons.
Computer-managed instruction (CMI) aids the instructor in instructional management without actually doing the teaching. Central CMI themes discussed in the literature are individualization, behavioral objectives, and educational technology.
Computer in Teaching Learning process
In computer managed instructions, the computer gathers, stores and manages information to guide students through individualized learning experience.

            As the computer is being used in administrative and management, these days, such type of use of a computer is known as computer based learning, for example in distributing the salaries of the teachers and other employers.
           
            Computer is not used directly in teaching – learning process, but it used as an helper in teaching learning process. If a teacher is made free by assigning his other duties to the computer such as administrative, managemental activities, then he can utilize his spare time in an effective manner in the classroom.
Computer Managed Testing
            Computers are used in the preparation, administration and scoring of tests. Various items of the tests are collected and pooled. These item pools are stored as computer files. With the help of computers items pools are managed and updated. Whenever needed, they can be retrieved. Computers are used for preparing tests.
            Tests can be conveniently administered by a computer. During the testing sequence a decision algorithm is used repeatedly which decides the sequence of questions to be asked and the point at which to stop the test.
            Computers are used to process test data. Numerous scores can be computed. Consequently detailed and individualized feedback may be provided. Teachers can also get individual results detailing e.g, which student’s have mastered which objectives.