Derived - We know, computers need data or facts, which was at the time the data inputted will be translated into a binary. Machine or a computer to process the fact data into a useful information for its users. By Computer is expected to improve the work and solve various problems. Before the data is processed into information through the hardware located on the CPU by using the software. Software is a program or software of the computer. Is a software program that contains instructions to perform data processing. Currently, the level of processing that is done the software is machine-like (wish machine) began to change with the nature of human-like (human desires). In the information theory, hierarchical structured information, ranging from data / facts, then after selection and sorting process into something useful into information. Information in a systematic stacking with a certain logic flow into knowledge (knowledge). Hardware will not work without the software and vice versa software not function without the hardware. Both of these devices are interrelated so that the computer can function properly. Technological developments, especially in the hardware continues to be offset by the use of computer software to be maximal. Computer skills to be especially related to hardware and software, and therefore required that the software actually supports devices kerasnya.Bentuk simplest of software, using Boolean algebra, which are represented as binary digits (bits), which is 1 ( true) or 0 (false), this way is definitely very difficult, so people began to group the bits into nible (4 bits), byte (8 bits), word (16 bits), double word (32 bits). Groups in stacking these bits into structures such as storage instructions, transfer, arithmetic operations, logic operations, and is in the form of bits converted into code that is known as an assembler. Machine code itself is quite difficult because it demands to be able to memorize the code and formatting (rules) the writing is quite confusing, the problem is then born of high level programming languages ??such as human language (English). Currently making software has become a very complex production process, with the sequence of a long process involving dozens or even hundreds of people in the making. Based software development until now divided into several eras, namely:
- Starter Era (Pioneer) Forms software initially is the connections between the inner cable into the computer, How to access a computer using punched card is a card that is in the holes. The use of the computer when it is done right, a program for a machine for a particular purpose. In this era, the software is an integral part of the hardware. The use of computers is done directly and the results were completed on the computer working on a print out. Process will be undertaken in the form of lines of computer instructions sequentially in the process.
- Stable Era the era of computer use is much stable in use, not only by the researchers and academics, but also by industry / company. Software companies have sprung up, and a software can run multiple functions, from this software began to shift into a product. Command lines run the software on the computer is no longer a one-on-one, but it was as much the process will be undertaken simultaneously (multi-tasking). A software capable of resolving multiple users (multi-user) rapidly / instantly (real time). In this era began in familiar database system, which separates the program (processing) with the data (which is in the process).
- Micro Era In line with the broader PC and computer networks in this era, is also developing software to meet individual needs. The software can be differentiated into the system software responsible for handling internal and application software that is used directly by the user for specific purposes. Automation is in software leads to a kind of artificial intelligence.