0% found this document useful (0 votes)
17 views13 pages

Software

The document provides an overview of software concepts, categorizing software into system software, application software, and utility software. It also discusses programming languages, detailing their evolution from machine language to natural language, and highlights the differences between third and fourth generation languages. Additionally, it includes an assignment section with questions related to the content covered.

Uploaded by

Shailendra Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views13 pages

Software

The document provides an overview of software concepts, categorizing software into system software, application software, and utility software. It also discusses programming languages, detailing their evolution from machine language to natural language, and highlights the differences between third and fourth generation languages. Additionally, it includes an assignment section with questions related to the content covered.

Uploaded by

Shailendra Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 13

Software Concepts

Software

• Non-touchable part of computer.


• Used to describe the instructions, given to a
computer.
• Program or group of programs.
• Computer instructions or data, anything that can be
stored electronically is software.
Types of Computer
Software
Computer software can be categorized into following two
categories:
1. System Software: includes those software that help in
better utilization hardware resources.
Example Operating System, Compiler, Disk Drivers etc.
2. Application Software: includes those software that helps
in performing a particular task such as creating a document,
preparing a presentation. These are general purpose
software's.
Example: Ms-Word, Excel, Power Point, etc.
3. Utility Software: includes those software that generally
comes along with operating system used to perform basic
activities.
Example: Disk Format Utility, Disk Defragmenter Utility, etc.

Programming Languages
Medium of communication between computer and the
user containing words, symbols and syntax rules.
• Each language has its own vocabulary and rules.
• A programming language is used to control the
behaviour of a computer.
• All computer languages can be classified in the
following five generations:

1. Machine Language (1st Generation Language –


1945)
2. Assembly Language(2nd Generation Language –
1950s)
3. High Level Language (3rd Generation Language –
1960s)
4. Very High Level Language (4th Generation
Language – 1970s)
5. Natural Language (5th Generation Language –
Programming Languages
1. Machine Language
• The set of instruction codes, in binary, which can be
directly understood by the CPU without translating the
program.
• An instruction has two parts:
 Op-Code: First part of instruction which tells the
computer what function to perform.
 Operand: Second part of instruction, tells the
computer where to find or store data or
instructions that are to be manipulated.
• The lowest-level, programming language.
• Machine Dependent.
• Difficult to program.
• Error Prone.
• Difficult to modify.
Programming Languages

2. Assembly Language
• A low-level language.
• Allows the programmer to use abbreviations or words
instead of binary numbers, known as mnemonics.
• A program called an assembler transforms assembly
language into machine code.
• Readability is more than machine language.
• Easy to understand and use.Easy to locate and
correct errors.
• Easier to modify.
• No need to track addresses.
• Easily relocatable.
• It has four parts; label, mnemonic, operand,
comment; not all are present in every line.
Example
Limitations:
• Machine dependent.
• Knowledge of hardware.
• Machine level coding.
Example-
MOV r0, #0C ;load base address of string
into r0
LOAD: MOV r1,(r0) ;load contents into r1
CALL PRINT ; call a print routine to print
the character in r1
Programming Languages
3. High-Level Language
• Also known as Procedure/Problem Oriented
Language.
• Machine independent.
• Easier to learn and use than previous
languages.
• Requires less time to write the code.
• Easier to maintain.
• Provides better documentation.
• Fewer Errors.
• Lower program preparation cost.
• Lack of flexibility.
EXAMPLES OF HLLs
• FORTRAN Formula Translation Language
• COBOL Common Business Oriented Language
• ALGOL Algorithmic Language
• RPG Report Program Generator
• APL A Programming Language
• BASIC Beginners All Purpose Symbolic Instruction Code
• PL/I Programming Language I
• PASCAL Named after Blaise Pascal, a French
Philosopher
• Ada Named after Lady Lovelace Ada
• C General Purpose Programming Language
• C++ Object Oriented Programming Language
• JAVA Object Oriented Programming Language
Programming Languages
4.Very High Level Language
•Also known as 4GL or non-procedural
language.
•Machine independent.
•Easier to learn and use.
•Easier to maintain.
•The tools are:
• DBMS
• Report Generators
• Query Languages
• Application Generators.
Examples: SQL and ORACLE
Programming Languages
5. Natural Languages
Natural languages are of two types:
• Ordinary Human Language: English,
German, Spanish etc.
• Programming Languages: that use
human language to give people more
natural connection with computers with
4GLs. Using AI (Artificial Intelligence), the
attempt to make computers which will have
human like qualities such as learning,
reasoning, communicating, seeing and
hearing etc.
• Prolog, OPS5 and Mercury are the best
known 5th generation languages.
COMPARISON BETWEEN 3RD AND 4TH
GENERATION LANGUAGES
• THIRD GENERATION • FOURTH GENERATION
1. May be used by non-
1. Used by professional programmers as well.
programmers 2. Require specifications of
2. Require task performance what task to perform (what)
specifications (how) 3. Default alternatives are built-
3. All alternatives are in
specified 4. Require far few instructions
4. Require large number of
instructions
5. Code easy to read and
5. Code difficult to read, and maintain.
understand
6. Developed primarily for on-
6. Originally developed for line.
batch processing.
7. Can be difficult to learn
7. Easy to learn
8. Difficult to debug
8. Easier to debug
9. Typically file oriented.
9. Typically database oriented
Assignment

• What is meant by System Software and how


does it differ from Application Software.
• Identify any five functions that utility
programs can perform
• What is the difference between High level
and low level languages.

You might also like