Computer Organisation –
Input: this is the process of entering data and programs into the computer system.
Control Unit (CU): The process of input, output, processing and storage is performed under the supervision of a unit called ‘Control Unit’. It decides when to start receiving data, when to stop it, where to store data, etc. It takes care of step-by-step processing of all operations inside the computer.
Memory Unit: Computer is used to store data and instructions.
Arithmetic Logic Unit (ALU): The major operations performed by the ALU are addition, subtraction, multiplication, division, logic and comparison.
Output: This is the process of producing results from the data for getting useful information. The ALU and the CU of a computer system are jointly known as the central processing unit (CPU). You may call CPU as the brain of any computer system.
Types of devices
Input device: Input devices accept data and instructions from the user. Following are the examples of various input devices, which are connected to the computer for this purpose.
3. Light Pen
5. Touch Screen
6. Microphone for voice as input
7. Track Ball
Output devices : Output devices return processed data that is information, back to the user. Some of the commonly used output devices are:
1. Monitor (Visual Display Unit)
As you are aware, computer cannot do anything on its own. It is the user who instructs computer; what to do, how to do and when to do. In order to perform any task, you have to give a set of instructions in a particular sequence to the computer. These sets of instructions are called Programs. Software refers to a set of programs that makes the hardware perform a particular set of tasks in particular order.
An operating system is a system software that provides an interface for a user to communicate with the computer, manages hardware devices (disk drives, keyboard, monitor, etc), manages and maintains disk file systems and supports application programs. Some popular Operating systems are UNIX, Windows and Linux.
Although operating system provides all the features users need to use and maintain their systems, inevitably, they still do not meet everyone’s expectations. This has led to another type of system software called “Utilities“. These are programs that bridge the gap between the functionality of an OS and the needs of users. Utility programs are a broad category of software such as compress (zip)/uncompress (unzip) files software, anti-virus software, split and join files software, etc.
Application software is a set of programs, which are written to perform specific tasks, for example: An application package for managing library known as library information system is used to manage information of library such as: keeping book details, account holder details, book issue details, book return details etc. Another application package for managing student details is called student’s information system, manages student’s roll no, name, parents name, address, class, section, processing of examination results etc. Application software can be broadly classified into two types:
(a) Generalized packages
(b) Customized packages
These are user-friendly software written to cater to user’s very general needs such as preparing documents, drawing pictures, database to manage data/information, preparing presentations, play games etc.
It is a group of programs that provide general-purpose tools to solve specific problems. Some of the generalized packages are listed below:
Word Processing Software(for preparing documents): Word Perfect, MS-Word, OpenOffice.org Writer
Spreadsheets (Data Analysis): Lotus Smart suites, MSExcel, OpenOffice.org Calc, Apple Numbers
Presentations: Presentation Graphics, MS-PowerPoint, OpenOffice.org Impress
Database Management System: MS-Access, OpenOffice.org Base, MS-SQL Server, ORACLE
Graphics Tools: Paint shop pro, Adobe Photoshop
These are the applications that are customized (or developed) to meet the specific requirements of an organization/institution. For Example Student information details, Payroll packages, inventory control etc. These packages are developed using high-level computer language.
Languages are a means of communication. Normally people interact with each other through a language. On the same pattern, communication with computers is carried out through a language. This language is understood both by user and the machine. Just as every language like English, Hindi has its grammatical rules; every computer language is bound by rules known as SYNTAX of that language. The user is bound by that syntax while communicating with the computer system.
Computer languages are broadly classified as:
Low Level Language:
The term low level means closeness to the way in which machine understand. The low level languages are:
Machine Language: This is the language (in the form of 0’s and 1’s, called binary numbers) understood directly by the computer. It is machine-dependent. It is difficult to learn and even more difficult to write programs.
Assembly Language: This is the language where the machine codes comprising of 0’s and 1’s are substituted by symbolic codes (called mnemonics) to improve their understanding. It is the first step to improve the programming structure. Assembly language programming is simpler and less time consuming than machine-level programming, it is easier to locate and correct errors in assembly language than in machine language programs. It is also machine-dependent. Programmers must have knowledge of the machine on which the program will run.
High Level Language:
You know that low level language requires extensive knowledge of the hardware since it is machine dependent. To overcome the limitation, high level language has been evolved which uses normal English like, easy to understand statements to solve any problem. Higher level languages are computer independent and programming becomes quite easy and simple. Various high level languages are given below:
BASIC (Beginners All Purpose Symbolic Instruction Code): It is widely used, easy to learn general purpose language. Mainly used in microcomputers in earlier days.
COBOL (Common Business Oriented language): A standardized language used for commercial applications.
FORTRAN (Formula Translation): Developed for solving mathematical and scientific problems. One of the most popular languages among scientific community
C: Structured Programming Language used for all-purpose such as scientific application, commercial application, developing games etc.
C++: Popular object-oriented programming language, used for general purpose.
COMPILER AND ASSEMBLER
As you know that High Level language is machine independent and assembly language though it is machine dependent yet mnemonics that are being used to represent instructions are not directly understandable by machine. Hence to make the machine understand the instructions provided by both the languages, Compiler and Assembler are required to convert these instructions into machine language.
The software (set of programs) that reads a program written in high level language and translates it into an equivalent program in machine language is called as Compiler.
The program written by the programmer in high level language is called source program and the program generated by the compiler after translation is called as object program.
The software (set of programs) that reads a program written in assembly language and translates it into an equivalent program in machine language is called as Assembler.