0% found this document useful (0 votes)
14 views5 pages

Introduction to Computer Systems and Software

The document provides an overview of computer systems, detailing the components of hardware and software, including input devices, CPU, primary and auxiliary storage, and the distinction between system and application software. It explains the evolution of computer languages from machine languages to high-level languages, highlighting the roles of compilers, assemblers, and interpreters in translating code. Additionally, it discusses the importance of language processors in converting high-level programming languages into machine code for execution.

Uploaded by

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

Introduction to Computer Systems and Software

The document provides an overview of computer systems, detailing the components of hardware and software, including input devices, CPU, primary and auxiliary storage, and the distinction between system and application software. It explains the evolution of computer languages from machine languages to high-level languages, highlighting the roles of compilers, assemblers, and interpreters in translating code. Additionally, it discusses the importance of language processors in converting high-level programming languages into machine code for execution.

Uploaded by

mauryaanjalivns
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

UNIT -1

Introduction to Computing:
Computer Systems:
A computer is a system made of two major components: hardware and software. The computer hardware is the
physical equipment. The software is the collection of programs (instructions) that allow the hardware to do its
job.
Computer Hardware
The hardware component of the computer system consists of
five parts: input devices, central processing unit (CPU)
,primary storage, output devices, and auxiliary storage
devices.

The input device is usually a keyboard where programs


and data are entered into the computers. Examples of
other input devices include a mouse, a pen or stylus, a
touch screen, or an audio input unit.
The central processing unit (CPU) is responsible for
executing instructions such as arithmetic
calculations,comparisons among data, and movement of
data inside the system. Today’s computers may have
one ,two, or more CPUs .Primary storage ,also known
as main memory, is a place where the programs and data
are stored temporarily during processing. The data in
primary storage are erased when we turn off a personal computer or when we log off from a time-sharing
system.
The output device is usually a monitor or a printer to show output. If the output is shown on the monitor, we
say we have a soft copy. If it is printed on the printer, we say we have a hard copy.
Auxiliary storage, also known as secondary storage, is used for both input and output. It is the place where
the programs and data are stored permanently. When we turn off the computer, or programs and data remain in
the secondary storage, ready for the next time we need them.
Computer Software
Computer software is divided in to two broad categories: system software and application software .System
software manages the computer resources .It provides the interface between the hardware and the users.
Application software, on the other hand is directly responsible for helping users solve their problems.
System software consists
of programs that manage
the hardware resources of a
computer and perform
required information
processing tasks. These
programs are divided into
three classes: the operating
system, system support,
and system development.
The operating system
provides services such as a user interface, file and database access, and interfaces to communication
systems such as Internet protocols. The primary purpose of this software is to keep the system
operating in an efficient manner while allowing the users access to the system.
System support software provides system utilities and other operating services. Examples of
system utilities are sort programs and disk format programs. Operating services consists of
programs that provide performance statistics for the operational staff and security monitors to
protect the system and data.
The last system software category ,system development software, includes the language
translators that convert programs into machine language for execution ,debugging tools to ensure
that the programs are error free and computer –assisted software engineering(CASE) systems.
Application software
Application software is broken in to two classes :general-purpose software and application –
specific software. General purpose software is purchased from a software developer and can be
used for more than one application. Examples of general purpose software include word processors
,database management systems ,and computer aided design systems. They are labeled general
purpose because they can solve a variety of user computing problems.
Application –specific software can be used only for its intended purpose.
A general ledger system used by accountants and a material requirements planning system used by
a manufacturing organization are examples of application-specific software. They can be used only
for the task for which they were designed they cannot be used for other generalized tasks.
The relation ship between system and application software is shown in [Link] this figure, each
circle represents an interface point .The inner core is hard ware. The user is represented by the out
layer. To work with the system,the typical user uses some form of application software. The
application software in turn interacts with the operating system ,which is apart of the system
software layer. The system software provides the direct interaction with the hard ware. The opening
at the bottom of the figure is the path followed by the user who interacts directly with the operating
system when necessary.
Computer Languages:
To write a program for a computer, we must use a computer language. Over the years computer
languages have evolved from machine languages to natural languages.
1940’s Machine level Languages
1950’s Symbolic Languages
1960’s High-Level Languages
Machine Languages
In the earliest days of computers, the only programming languages available were machine
languages. Each computer has its own machine language, which is made of streams of 0’s and 1’s.
Instructions in machine language must be in streams of 0’s and 1’s because the internal circuits of a
computer are made of switches transistors and other electronic devices that can be in one of two
states: off or on. The off state is represented by 0 , the on state is represented by 1.
The only language understood by computer hardware is machine language.
Symbolic Languages:
In early 1950’s Admiral Grace Hopper, A mathematician and naval officer developed the concept
of a special computer program that would convert programs into machine language.
The early programming languages simply mirror to the machine languages using symbols of
mnemonics to represent the various machine language instructions because they used symbols,
these languages were known as symbolic languages.
Computer does not understand symbolic language it must be translated to the machine language. A
special program called assembler translates symbolic code into machine language. Because
symbolic languages had to be assembled into machine language they soon became known as
assembly languages.
Symbolic language uses symbols or mnemonics to represent the various ,machine language
instructions.
High Level Languages:
Symbolic languages greatly improved programming effificiency; they still required programmers to
concentrate on the hardware that they were using. Working with symbolic languages was also very
tedious because each machine instruction has to be individually coded. The desire to improve
programmer efficiency and to change the focus from the computer to the problem being solved led
to the development of high-level language.
High level languages are portable to many different computers, allowing the programmer to
concentrate on the application problem at hand rather than the intricacies of the computer. High-
level languages are designed to relieve the programmer from the details of the assembly language.
High level languages share one thing with symbolic languages, They must be converted into
machine language. The process of converting them is known as compilation.
The first widely used high-level languages, FORTRAN (FORmula TRANslation)was created by
John Backus and an IBM team in 1957;it is still widely used today in scientific and engineering
applications. After FORTRAN was COBOL(Common Business-Oriented Language). Admiral
Hopper was played a key role in the development of the COBOL Business language.
C is a high-level language used for system software and new application code.

Compiler and Interpreter


Computer programs are generally written in high-level languages (like C++, Python, and Java). A
language processor, or language translator, is a computer program that convert source code from one
programming language to another language or to machine code (also known as object code). They
also find errors during translation.

Compilers, interpreters, translate programs written in high-level languages into machine code that a
computer understands and assemblers translate programs written in low-level or assembly language
into machine code. In the compilation process, there are several stages. To help programmers write
error-free code, tools are available.

Assembly language is machine-dependent, yet mnemonics used to represent instructions in it are not
directly understandable by machine and high-Level language is machine-independent. A computer
understands instructions in machine code, i.e. in the form of 0s and 1s. It is a tedious task to write a
computer program directly in machine code. The programs are written mostly in high-level languages
like Java, C++, Python etc. and are called source code. These source code cannot be executed directly
by the computer and must be converted into machine language to be executed. Hence, a special
translator system software is used to translate the program written in a high-level language into
machine code is called Language Processor and the program after translated into machine code
(object program/object code).

Types of Language Processors

The language processors can be any of the following three types:

1. Compiler

The language processor that reads the complete source program written in high-level language as a
whole in one go and translates it into an equivalent program in machine language is called a Compiler.
Example: C, C++, C#.

In a compiler, the source code is translated to object code successfully if it is free of errors. The
compiler specifies the errors at the end of the compilation with line numbers when there are any errors
in the source code. The errors must be removed before the compiler can successfully recompile the
source code again the object program can be executed number of times without translating it again.
What is Language Processors?

2. Assembler

The Assembler is used to translate the program written in Assembly language into machine code.
The source program is an input of an assembler that contains assembly language instructions. The
output generated by the assembler is the object code or machine code understandable by the
computer. Assembler is basically the 1st interface that is able to communicate humans with the
machine. We need an assembler to fill the gap between human and machine so that they can
communicate with each other. code written in assembly language is some sort of
mnemonics(instructions) like ADD, MUL, MUX, SUB, DIV, MOV and so on. and the assembler is
basically able to convert these mnemonics in binary code. Here, these mnemonics also depend upon
the architecture of the machine.

For example, the architecture of intel 8085 and intel 8086 are different.

3. Interpreter

The translation of a single statement of the source program into machine code is done by a language
processor and executes immediately before moving on to the next line is called an interpreter. If
there is an error in the statement, the interpreter terminates its translating process at that statement
and displays an error message. The interpreter moves on to the next line for execution only after the
removal of the error. An Interpreter directly executes instructions written in a programming or
scripting language without previously converting them to an object code or machine code. An
interpreter translates one line at a time and then executes it.

Example: Perl, Python and Matlab.

You might also like