BS Computer Notes Chapter 6 Central Processing Unit Or Processor Or Micro Processor
BS Computer Notes Chapter 6 Central Processing Unit Or Processor Or Micro Processor
A central processing unit (CPU) is the electronic circuit within a computer that carries out the instructions of a computer program by performing the basic arithmetic operations, logical operations, control operations and input/output (I/O) operations specified by the instructions.
Figure 12: A Microprocessor Chip Fixed on Motherboard
A processor, or “microprocessor,” is a small chip that resides in computers and other electronic devices. Its basic job is to receive input and provide the appropriate output. The central processor of a computer is also known as the CPU, or “central processing unit.”
The main components of CPU help it in performing various functions. The three components of the
CPU are following:
- Arithmetic Logic Unit
- Control Unit
Each of the components is explaining one-by-one under the following headings:-
Arithmetic Logic Unit (ALU):
There is electronic circuitry in the arithmetic logic unit which executes all arithmetic and logical operations. Its function is obvious from its name. It performs arithmetic calculations like as addition, subtraction, multiplication, and division as well as comparisons. The unit can compare numbers, letters, or special characters. There can be more than one Arithmetic logic unit in a CPU, and these ALUs can also be used for the purpose of maintaining timers that help run the computer.
There is circuitry in the control unit which uses electrical signals to instruct the whole computer system for carrying out or executing, already stored program instructions. Its name clearly shows that it controls and coordinates computer components. It extracts instructions from memory and decodes and executes them. In fact, it regulates the flow of information through the processor. In short, it can be said, this component receives, decodes, stores results and manages execution of data that flows through the CPU. Its communication with both arithmetic unit and memory is inevitable.
Registers are temporary storage areas which are responsible for holding the data that is to be processed. They store the instructions and data in a processor. This data is further used by Control Unit. There are some registers that are set aside for specific tasks; these generally include a program counter, stack, and flags.
Figure 13: Block Diagram of CPU
A bus, in computing, is a set of physical connections (cables, printed circuits, etc.) which can be shared by multiple hardware components in order to communicate with one another.
The purpose of buses is to reduce the number of “pathways” needed for communication between the components, by carrying out all communications over a single data channel. This is why the metaphor of a “data highway” is sometimes used. In reality, each bus is generally constituted of 50 to 100 distinct physical lines, divided into three subassemblies:
The address bus (sometimes called the memory bus) transports memory addresses which the processor wants to access in order to read or write data. It is a unidirectional bus.
The data bus transfers instructions coming from or going to the processor. It is a bidirectional bus.
The control bus (or command bus) transports orders and synchronization signals coming from the control unit and traveling to all other hardware components. It is a bidirectional bus, as it also transmits response signals from the hardware
Figure 14: A System Bus
When referring to a physical device, a hardware port or peripheral port is a hole or connection found on the front or back of a computer. Ports allow computers to access external devices such as printers. Below is a short listing of the different computer ports you may find on a computer. The picture shows an example of a type of port on the back of a computer. A computer port is also called as a Communication Port as it is responsible for communication between the computer and its peripheral device. Generally, the female end of the connector is referred to as a port and it usually sits on the motherboard. In Computers, communication ports can be divided into two types based on the type of protocol used for communication. They are Serial Ports and Parallel Ports.
Figure 15: Different Ports in Computer System
A serial port is an interface through which peripherals can be connected using a serial protocol which involves the transmission of data one bit at a time over a single communication line. The most common type of serial port is a D-Sub miniature or a D-sub connector that carry RS-232 signals. A parallel port, on the other hand, is an interface through which the communication between a computer and its peripheral device is in a parallel manner i.e. data is transferred in or out in parallel using more than one communication line or wire. The printer port is an example of the parallel port.
A programming language is a formal language that specifies a set of instructions that can be used to produce various kinds of output.
Programming languages generally consist of instructions for a computer.
Programming languages can be used to create programs that implement specific algorithms. A language is the main medium of communicating between the Computer systems and the most common are the programming languages. As we know a Computer only understands binary numbers that is 0 and 1 to perform various operations but the languages are developed for different types of work on a Computer. A language consists of all the instructions to make a request to the system for processing a task. From the first generation and now the fourth generation of the Computers there were several programming languages used to communicate with the Computer. Here we will go into the detail of the Computer language and its types.
Figure 16: Computer Languages and its types
A Computer language includes various languages that are used to communicate with a Computer machine. Some of the languages like programming language which is a set of codes or instructions used for communicating the machine. Machine code is also considered as a computer language that can be used for programming. And HTML also is a computer language or a mark-up language but not programming language. Similarly, there are different types of languages developed for different types of work to be performed by communicating with the machine. But all the languages that are now available are categorized into two basic types of languages including Low-level language and High-level language.
The high-level languages are the most used and also more considered programming languages that help a programmer to read, write and maintain. It is also called third generation language that is used and also running till now by many programmers. They are less independent of a particular type of Computer and also require a translator that can convert the high-level language to machine language. The translator may be an interpreter and Compiler that helps to convert into binary code for a Computer to understand.
There are various high-level programming languages like C, FORTRAN or Pascal that are less independent and also enable the programmer to write a program. There are several high-level languages that were used earlier and also now like COBOL, FORTRAN, BASIC, C, C++, PASCAL, LISP, Ada, Algol, Prolog, and Java. It is user-friendly as the programs are written in English using words, symbols, characters, numbers that need to be converted to machine code for processing.
Low-level languages are the machine codes in which the instructions are given in machine language in the form of 0 and 1 to a Computer system. It is mainly designed to operate and handle all the hardware and instructions set architecture of a Computer. Machine Language is one of the low-level
programming languages which is the first generation language developed for communicating with a Computer. It is written in machine code which represents 0 and 1 binary digits inside the Computer string which makes it easy to understand and perform the operations. As we know a Computer system can recognize electric signals so here 0 stands for turning off electric pulse and 1 stands for turning on the electric pulse. It is very easy to understand by the Computer and also increases the processing speed.
The main advantage of using Machine language is that there is no need for a translator or interpreter to translate the code, as the Computer directly can understand. But there are some disadvantages also like you have to remember the operation codes.
Assembly Language (Intermediate Level Languages)
Assembly Language is the second generation programming language that has almost similar structure and set of commands as Machine language. Instead of using numbers like in Machine languages here we use words or names in English forms and also symbols. The programs that have been written using words, names and symbols in assembly language are converted to machine language using an Assembler. Because a Computer only understands machine code languages that’s why we need an Assembler that can convert the Assembly level language to Machine language so the Computer gets the instruction and responds quickly. The main disadvantage of this language is that it is written only for a single type of CPU and does not run on any other CPU. But its speed makes it the most used low-level language till today which is used by many programmers.