Software
As described in the introduction, computers can understand just when the information is provided in a language in which the computer can understand. In sequence to make the man-machine communication simpler the languages are developed. Commonly languages use words and statements which are generally being used in communication. These categories of languages are known as the high level languages. The information provided in a high level language can be simply understood by the user, although the machine can understand only when it is translated into binary forms such as 0s and 1s.
The translated binary form is known as the low level language. The user could even provide information in the binary form, the machine language. But it is hard to write whole set of instructions using machine level language and assembly language. The instructions might also be provide in mnemonic codes, such as MUL, STO, ADD, GO, MOV and many more. This is known as the assembly language.
Following table describes the instruction for adding two numbers
*In machine language the first three values indicate the type of instruction, while the last six values give the number or address. 01-> copy the value from memory location xxxxxxx
10 -> Add the number, 11-> store the value in memory, 100-> write the result.
**the COP means copy; ADD means add, STO means store, STP means stop.
Using any language we can write software instructions. With the help of software user can write high-level program. A program is a sequence of instruction which will be executed one after other. Software can be classified into two types:
1. System software
2. Application software
System software: Directly interacts with the computer system. An OS, compiler, interpreter are examples for this.
Application software: All the programs written by a user with the help of any software is called as application software. Eg. Balance sheet preparation for a company, monitoring rail way reservation process etc.