We have seen that CPU consists of memory Unit, control unit and arithmetic and logic unit (ALU). To make it working there has to be communication between these sub units. The communication links between these sub units are called buses. These are electrical paths for data to flow from point to point in a circuit. Buses classified on the basis of the function they do and are named accordingly. The buses for communication in CPU are:
Control buses, Address buses, Data Bus
Control Bus: The control bus in the path for all controlling and timing functions sent by the control unit to other units of the CPU.
Address bus: This is the path used for locating the address of the memory location where the next instruction to be executed or the next piece of data is found. This is used for data retrieval storage and manipulations where addresses of storage locations are required.
Data bus: This is the path on which actual data transfer take place. These bus paths can be represented by the above figure, where his direction as well the path between the sub units is represented.
Working of CPU
CPU works based upon the instructions given by the user to act upon. It is the CPU that is responsible for the computer to work so fact and great precision. Depending upon the instruction given, the CPU act accordingly. Whatever might be the actual instructions given, computer has to necessarily undergo two cycles known as:
Instruction cycle and
Execution cycle so that it can execute the given instruction.
Instruction cycle basically involves two steps:
Fetch step and
Fetch step locate s an instruction from memory and sends it to the control unit. So that it act upon the instruction, then the decode step takes up the task of decoding the instruction and sends it to the ALU along with the required data. During the execution cycle, the instruction is executed by ALU, and the results are located, this continues till the end of the program. As the program is executed, it appears to be a lengthy process, but it does not take much time, hardly few micro seconds to do those series of steps.
Computer Registers: Registers are special storage locations which are within the central processing unit. Registers are very fast. They accept, store, transfer data and instructions which are in immediate use. The instruction being executed is retrieved by CPU from the main memory and stored in registers.
Depending upon the cpu’s design, the number and types of registers vary. The number and type of registers, the processing capacity of CPU varies. The more the number of register and bigger the size the greater would be the processing power. In general registers hold 8 bits; there are other type of registers that can hold 16 bits and 32 bits.
Software: Software is that component which makes the task of a user complete, as it is that component which helps a user to give set instructions, so that the computer works. The software is required for making the system work. The software categorizes on the basis of functions it performs. The following are some of the basic categories of software:
System software: This is that software which is used for developing or running a computer system. This software controls all processing activities and makes sure that the resources and the power of the computer are used in most efficient manner. System software consists of following software:
Operating software, language processors (assemblers, compilers, and interpreters), device drivers, utility programs etc.
Thus, we can describe system software is a package which consists of various programs required for the functioning of the computer itself. It is also needed for translation, loading, controlling and running of the programs.
Systems software basically serves two major purposes.
It controls the execution of programs on the computers.
It aids the development of software.
This software provides a wide variety of services and functions which makes the computer useful. In absence of this software, the programmer’s task of writing a program would become completely difficult, as most of his programming skills will be devoted for writing the programs in binary, enter the software using switches, control execution and take output in binary, which is a herculean task.
Operating system: Operating system is set of programs that control and support hardware and provide various services which are used for better operating performance of the computer. The major functions of any operating system are:
It against processors to tasks. It manages memory and other storage areas. It act as a command interpreter. File management. Input-output management. Establishment data security and integrity. Maintains account of processors time for billing purposes. Provides data and time services etc.
The operating system can be classified as single user and multi user depending on the number of users working on it at a given point of time.
DOS is a good example of single user operating system and UNIX, Window-NT; Linux etc are some of the common multi user operating systems.
Languages processors: a) Translators: As a digital computer accepts digits and characters as input, however this input is not understandable by the computer. To make the computer understand it, the input has to be converted into machine language. The software which makes this conversion possible and increases the productivity of the programmer is called Translators.
There are three basic types of translators: They are:
Compilers, Interpreters, Assembler
Compilers: A Compiler is software that will accept the total program code as input
and then converts into machine code. For every language usually there is a compiler which interprets and converts the program in that language into machine understandable code.
Interpreters: Interpreter also does the same task of converting the program code into machine code like compiler but it is different from the compiler in sense the compiler task the complete program as input, but interpreter takes the program code line by line and converts it into machine code.
Assembler: This is the third category of translator. It also works the same way as compiler and interpreter but here, the input programs are ion assembly language. The output is in machine language.
Services Utilities: These utilities are those software programs which are provided by the manufacturer of various hardware to perform specific tasks which are common to all data processing installations. Some of the commonly available services utilities are:
Device Drivers: These are special programs which are used to enhance the capability of operating systems, so that it can support many input/output devices like mouse, joysticks, printer’s etc. This software is to be installed so they are activated to work on the given operating system.
Directory and filer management utilities: These are those software programs which are used to manage data. These program usually a user with a user interface e so that the process of maintaining files and directories becomes easy.