Thursday, August 4, 2022

Microprocessor Concepts



Microprocessor is the brain of computer, which does all the work. It is a computer processor that incorporates all the functions of CPU (Central Processing Unit) on a single IC (Integrated Circuit) or at the most a few ICs. Microprocessors were first introduced in early 1970s. 4004 was the first general purpose microprocessor used by Intel in building personal computers. Arrival of low cost general purpose microprocessors has been instrumental in development of modern society the way it has.

Microprocessor

We will study the characteristics and components of a microprocessor in detail.

Microprocessors Characteristics

Microprocessors are multipurpose devices that can be designed for generic or specialized functions. The microprocessors of laptops and smartphones are general purpose whereas ones designed for graphical processing or machine vision are specialized ones. There are some characteristics that are common to all microprocessors.

These are the most important defining characteristics of a microprocessor −

  • Clock speed
  • Instruction set
  • Word size

Clock Speed

Every microprocessor has an internal clock that regulates the speed at which it executes instructions and also synchronizes it with other components. The speed at which the microprocessor executes instructions is called clock speed. Clock speeds are measured in MHz or GHz where 1 MHz means 1 million cycles per second whereas 1 GHz equals to 1 billion cycles per second. Here cycle refers to single electric signal cycle.

Currently microprocessors have clock speed in the range of 3 GHz, which is maximum that current technology can attain. Speeds more than this generate enough heat to damage the chip itself. To overcome this, manufacturers are using multiple processors working in parallel on a chip.

Word Size

Number of bits that can be processed by a processor in a single instruction is called its word size. Word size determines the amount of RAM that can be accessed at one go and total number of pins on the microprocessor. Total number of input and output pins in turn determines the architecture of the microprocessor.

First commercial microprocessor Intel 4004 was a 4-bit processor. It had 4 input pins and 4 output pins. Number of output pins is always equal to the number of input pins. Currently most microprocessors use 32-bit or 64-bit architecture.

Instruction Set

A command given to a digital machine to perform an operation on a piece of data is called an instruction. Basic set of machine level instructions that a microprocessor is designed to execute is called its instruction set. These instructions do carry out these types of operations −

  • Data transfer
  • Arithmetic operations
  • Logical operations
  • Control flow
  • Input/output and machine control

Microprocessor Components

Compared to the first microprocessors, today’s processors are very small but still they have these basic parts right from the first model −

  • CPU
  • Bus
  • Memory

CPU

CPU is fabricated as a very large scale integrated circuit (VLSI) and has these parts −

  • Instruction register − It holds the instruction to be executed.

  • Decoder − It decodes (converts to machine level language) the instruction and sends to the ALU (Arithmetic Logic Unit).

  • ALU − It has necessary circuits to perform arithmetic, logical, memory, register and program sequencing operations.

  • Register − It holds intermediate results obtained during program processing. Registers are used for holding such results rather than RAM because accessing registers is almost 10 times faster than accessing RAM.

Bus

Connection lines used to connect the internal parts of the microprocessor chip is called bus. There are three types of buses in a microprocessor −

  • Data Bus − Lines that carry data to and from memory are called data bus. It is a bidirectional bus with width equal to word length of the microprocessor.

  • Address Bus − It is a unidirectional responsible for carrying address of a memory location or I/O port from CPU to memory or I/O port.

  • Control Bus − Lines that carry control signals like clock signals, interrupt signal or ready signal are called control bus. They are bidirectional. Signal that denotes that a device is ready for processing is called ready signal. Signal that indicates to a device to interrupt its process is called an interrupt signal.

Memory

Microprocessor has two types of memory

  • RAM − Random Access Memory is volatile memory that gets erased when power is switched off. All data and instructions are stored in RAM.

  • ROM − Read Only Memory is non-volatile memory whose data remains intact even after power is switched off. Microprocessor can read from it any time it wants but cannot write to it. It is preprogrammed with most essential data like booting sequence by the manufacturer.

Number System Conversion



As you know decimal, binary, octal and hexadecimal number systems are positional value number systems. To convert binary, octal and hexadecimal to decimal number, we just need to add the product of each digit with its positional value. Here we are going to learn other conversion among these number systems.

Decimal to Binary

Decimal numbers can be converted to binary by repeated division of the number by 2 while recording the remainder. Let’s take an example to see how this happens.

Decimal To Binary

The remainders are to be read from bottom to top to obtain the binary equivalent.

4310 = 1010112

Decimal to Octal

Decimal numbers can be converted to octal by repeated division of the number by 8 while recording the remainder. Let’s take an example to see how this happens.

Decimal To Octal

Reading the remainders from bottom to top,

47310 = 7318

Decimal to Hexadecimal

Decimal numbers can be converted to octal by repeated division of the number by 16 while recording the remainder. Let’s take an example to see how this happens.

Decimal To Hexadecimal

Reading the remainders from bottom to top we get,

42310 = 1A716

Binary to Octal and Vice Versa

To convert a binary number to octal number, these steps are followed −

  • Starting from the least significant bit, make groups of three bits.

  • If there are one or two bits less in making the groups, 0s can be added after the most significant bit

  • Convert each group into its equivalent octal number

Let’s take an example to understand this.

Binary To Octal

101100101012 = 26258

To convert an octal number to binary, each octal digit is converted to its 3-bit binary equivalent according to this table.

Octal Digit01234567
Binary Equivalent000001010011100101110111

 

546738 = 1011001101110112

Binary to Hexadecimal

To convert a binary number to hexadecimal number, these steps are followed −

  • Starting from the least significant bit, make groups of four bits.

  • If there are one or two bits less in making the groups, 0s can be added after the most significant bit.

  • Convert each group into its equivalent octal number.

Let’s take an example to understand this.

Binary To Hexadecimal

101101101012 = DB516

To convert an octal number to binary, each octal digit is converted to its 3-bit binary equivalent.

Number System



The technique to represent and work with numbers is called number systemDecimal number system is the most common number system. Other popular number systems include binary number system, octal number system, hexadecimal number system, etc.

Decimal Number System

Decimal number system is a base 10 number system having 10 digits from 0 to 9. This means that any numerical quantity can be represented using these 10 digits. Decimal number system is also a positional value system. This means that the value of digits will depend on its position. Let us take an example to understand this.

Say we have three numbers – 734, 971 and 207. The value of 7 in all three numbers is different−

  • In 734, value of 7 is 7 hundreds or 700 or 7 × 100 or 7 × 102
  • In 971, value of 7 is 7 tens or 70 or 7 × 10 or 7 × 101
  • In 207, value 0f 7 is 7 units or 7 or 7 × 1 or 7 × 100

The weightage of each position can be represented as follows −

Decimal Number System

In digital systems, instructions are given through electric signals; variation is done by varying the voltage of the signal. Having 10 different voltages to implement decimal number system in digital equipment is difficult. So, many number systems that are easier to implement digitally have been developed. Let’s look at them in detail.

Binary Number System

The easiest way to vary instructions through electric signals is two-state system – on and off. On is represented as 1 and off as 0, though 0 is not actually no signal but signal at a lower voltage. The number system having just these two digits – 0 and 1 – is called binary number system.

Each binary digit is also called a bit. Binary number system is also positional value system, where each digit has a value expressed in powers of 2, as displayed here.

Binary Number System

In any binary number, the rightmost digit is called least significant bit (LSB) and leftmost digit is called most significant bit (MSB).

MSB lsb

And decimal equivalent of this number is sum of product of each digit with its positional value.

110102 = 1×2+ 1×23 + 0×22 + 1×21 + 0×20

= 16 + 8 + 0 + 2 + 0

= 2610

Computer memory is measured in terms of how many bits it can store. Here is a chart for memory capacity conversion.

  • 1 byte (B) = 8 bits
  • 1 Kilobytes (KB) = 1024 bytes
  • 1 Megabyte (MB) = 1024 KB
  • 1 Gigabyte (GB) = 1024 MB
  • 1 Terabyte (TB) = 1024 GB
  • 1 Exabyte (EB) = 1024 PB
  • 1 Zettabyte = 1024 EB
  • 1 Yottabyte (YB) = 1024 ZB

Octal Number System

Octal number system has eight digits – 0, 1, 2, 3, 4, 5, 6 and 7. Octal number system is also a positional value system with where each digit has its value expressed in powers of 8, as shown here −

Octal Number System

Decimal equivalent of any octal number is sum of product of each digit with its positional value.

7268 = 7×8+ 2×81 + 6×80

= 448 + 16 + 6

= 47010

Hexadecimal Number System

Octal number system has 16 symbols – 0 to 9 and A to F where A is equal to 10, B is equal to 11 and so on till F. Hexadecimal number system is also a positional value system with where each digit has its value expressed in powers of 16, as shown here −

Hexa Number System

Decimal equivalent of any hexadecimal number is sum of product of each digit with its positional value.

27FB16 = 2×163 + 7×162 + 15×161 + 10×160

= 8192 + 1792 + 240 +10

= 1023410

Number System Relationship

The following table depicts the relationship between decimal, binary, octal and hexadecimal number systems.

HEXADECIMALDECIMALOCTALBINARY
0000000
1110001
2220010
3330011
4440100
5550101
6660110
7770111
88101000
99111001
A10121010
B11131011
C12141100
D13151101
E14161110
F15171111

ASCII

Besides numerical data, computer must be able to handle alphabets, punctuation marks, mathematical operators, special symbols, etc. that form the complete character set of English language. The complete set of characters or symbols are called alphanumeric codes. The complete alphanumeric code typically includes −

  • 26 upper case letters
  • 26 lower case letters
  • 10 digits
  • 7 punctuation marks
  • 20 to 40 special characters

Now a computer understands only numeric values, whatever the number system used. So all characters must have a numeric equivalent called the alphanumeric code. The most widely used alphanumeric code is American Standard Code for Information Interchange (ASCII). ASCII is a 7-bit code that has 128 (27) possible codes.

ASCII Code

ISCII

ISCII stands for Indian Script Code for Information Interchange. IISCII was developed to support Indian languages on computer. Language supported by IISCI include Devanagari, Tamil, Bangla, Gujarati, Gurmukhi, Tamil, Telugu, etc. IISCI is mostly used by government departments and before it could catch on, a new universal encoding standard called Unicode was introduced.

Unicode

Unicode is an international coding system designed to be used with different language scripts. Each character or symbol is assigned a unique numeric value, largely within the framework of ASCII. Earlier, each script had its own encoding system, which could conflict with each other.

In contrast, this is what Unicode officially aims to do − Unicode provides a unique number for every character, no matter what the platform, no matter what the program, no matter what the language.

Domain Specific Tools



Depending on its usage, software may be generic or specificGeneric software is a software that can perform multiple tasks in different scenarios without being modified. For example, a word processor software can be used by anyone to create different types of documents like report, whitepaper, training material, etc. Specific software is a software for a particular application, like railway reservation system, weather forecasting, etc. Let us look at some examples of domain specific tools.

School Management System

School management system handles the diverse activities of a school like examination, attendance, admission, students’ fees, time table, teachers’ training, etc.

School Management

Inventory Management

Managing multiple activities like purchase, sales, order, delivery, stock maintenance, etc. associated with raw or processed goods in any business is called inventory management. The inventory management software ensures that stocks are never below specified limits and purchase/deliveries are done in time.

Payroll Software

Payroll software handles complete salary calculations of employees, taking care of leave, bonus, loans, etc. Payroll software is usually a component of HR (human resource) management software in mid-sized to big organizations.

Payroll

Financial Accounting

Financial management software keeps an electronic record of all financial transactions of the organization. It has many functional heads like account receivables, accounts payable, loans, payroll, etc.

Financial Accounting

Restaurant Management

Restaurant management software helps restaurant managers in keeping track of inventory levels, daily orders, customer management, employee scheduling, table bookings, etc.

Restaurant Management

Railway Reservation System

Railway reservation system is a software that handles multiple modules like train routes, train management, seat booking, food booking, train maintenance, train status, travel packages, etc.

Railway Reservation System

Weather Forecasting System

Weather forecasting system is a real-time software that predicts weather of a place by collecting copious amount of live data about atmospheric temperature, humidity, wind level, etc. It is used to predict major disasters like earthquakes, hurricanes, tsunamis, etc.

weather forecasting system

Office Tools



Application software that assist users in regular office jobs like creating, updating and maintaining documents, handling large amounts of data, creating presentations, scheduling, etc. are called office tools. Using office tools saves time and effort and lots of repetitive tasks can be done easily. Some of the software that do this are −

  • Word processors
  • Spreadsheets
  • Database systems
  • Presentation software
  • E-mail tools

Let us look at some of these in detail.

Word Processor

A software for creating, storing and manipulating text documents is called word processor. Some common word processors are MS-Word, WordPad, WordPerfect, Google docs, etc.

Word Processor

A word processor allows you to −

  • Create, save and edit documents
  • Format text properties like font, alignment, font color, background color, etc.
  • Check spelling and grammar
  • Add images
  • Add header and footer, set page margins and insert watermarks

Spreadsheet

Spreadsheet is a software that assists users in processing and analyzing tabular data. It is a computerized accounting tool. Data is always entered in a cell (intersection of a row and a column) and formulas and functions to process a group of cells is easily available. Some of the popular spreadsheet software include MS-Excel, Gnumeric, Google Sheets, etc. Here is a list of activities that can be done within a spreadsheet software −

  • Simple calculations like addition, average, counting, etc.
  • Preparing charts and graphs on a group of related data
  • Data entry
  • Data formatting
  • Cell formatting
  • Calculations based on logical comparisons

Spreadsheet

Presentation Tool

Presentation tool enables user to demonstrate information broken down into small chunks and arranged on pages called slides. A series of slides that present a coherent idea to an audience is called a presentation. The slides can have text, images, tables, audio, video or other multimedia information arranged on them. MS-PowerPoint, OpenOffice Impress, Lotus Freelance, etc. are some popular presentation tools.

Presentation Tool

Database Management System

Software that manages storage, updating and retrieval of data by creating databases is called database management system. Some popular database management tools are MS-Access, MySQL, Oracle, FoxPro, etc.

Database Management System

Open Source Software



A software whose source code is freely distributed with a license to study, change and further distributed to anyone for any purpose is called open source software. Open source software is generally a team effort where dedicated programmers improve upon the source code and share the changes within the community. Open source software provides these advantages to the users due to its thriving communities −

  • Security
  • Affordability
  • Transparent
  • Interoperable on multiple platforms
  • Flexible due to customizations
  • Localization is possible

Freeware

A software that is available free of cost for use and distribution but cannot be modified as its source code is not available is called freeware. Examples of freeware are Google Chrome, Adobe Acrobat PDF Reader, Skype, etc.

Shareware

A software that is initially free and can be distributed to others as well, but needs to be paid for after a stipulated period of time is called shareware. Its source code is also not available and hence cannot be modified.

Proprietary Software

Software that can be used only by obtaining license from its developer after paying for it is called proprietary software. An individual or a company can own such proprietary software. Its source code is often closely guarded secret and it can have major restrictions like −

  • No further distribution
  • Number of users that can use it
  • Type of computer it can be installed on, example multitasking or single user, etc.

For example, Microsoft Windows is a proprietary operating software that comes in many editions for different types of clients like single-user, multi-user, professional, etc.

Utility Software



Application software that assist OS in carrying out certain specialized tasks are called utility software. Let us look some of the most popular utility software.

Antivirus

A virus can be defined as a malicious program that attaches itself to a host program and makes multiple copies of itself, slowing down, corrupting or destroying the system. A software that assists the OS in providing virus free environment to the users is called antivirus. An anti-virus scans the system for any virus and if detected, gets rid of it by deleting or isolating it. It can detect many types of virus like boot virus, Trojan, worm, spyware, etc.

When any external storage device like USB drive is attached to the system, anti-virus software scans it and gives an alert if a virus is detected. You can set up your system for periodic scans or scan whenever you feel the need. A combination of both the techniques is advisable to keep your system virus free.

File management tools

As you know, file management is an important function of operating systems as all data and instructions are stored in the computer in form of files. Utility software providing regular file management tasks like browse, search, update, preview, etc. are called file management tools. Windows Explorer in Windows OS, Google desktop, Directory Opus, Double Commander, etc. are examples of such tools.

Compression tools

Storage space is always at a premium in computer systems. So operating systems are always looking at ways to minimize amount of storage space taken by files. Compression tools are utilities that assist operating systems in shortening files so that they take less space. After compression files are stored in a different format and cannot be read or edited directly. It needs to be uncompressed before it can be accessed for further use. Some of the popular compression tools are WinRAR, PeaZip, The Unarchiver, etc.

Disk Cleanup

Disk cleanup tools assist users in freeing up disk space. The software scans hard disks to find files that are no longer used and frees up space by deleting them.

Disk Defragmenter

Disk defragmenter is a disk management utility that increases file access speeds by rearranging fragmented files on contiguous locations. Large files are broken down into fragments and may be stores in non-contiguouslocations if contiguous ones are not available. When such files are accessed by the user, access speed is slow due to fragmentation. Disk defragmenter utility scans the hard disk and tries to assemble file fragments so that they may be stored in contiguous locations.

Backup

Backup utility enables backing up of files, folders, databases or complete disks. Backups are taken so that data may be restored in case of data loss. Backup is a service provided by all operating systems. In stand-alone systems backup may be taken in the same or different drive. In case of networked systems backup may be done on backup servers.

What is computer security?

Computer security basically is the protection of computer systems and information from harm, theft, and unauthorized use. It is the process ...