Notes of Software

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 4

Software Concept

Software is a Collection of program. Computer instructions or data. Anything that


can be stored electronically is software. The storage device and display devices
and hardware. The distinction between software and hardware is sometimes
confusing because they are so integrally linked.

Classification of Software-

1. System Software

2. Application Software

System Software-System software is computer software designed to operate


the computer hardware and to provide and maintain a platform for running
application Software. System software helps use the operating system and
computer system. It includes diagnostic tools, compilers, servers, windowing
systems, utilities, language translator, data communication programs, database
systems and more. The purpose of system software is to insulate the applications
programmer as much as possible from the details of the particular computer
complex being used, especially memory and other hardware features, and such
accessory devices as communications, printers, readers, displays, keyboards, etc.

Application Software- Application software is contrasted with system software


and middleware which manage and integrate a computer's capabilities, but
typically do not directly apply them in the performance of tasks that benefit the
user. This should be contrasted with system software which is involved in
integrating a computer's various capabilities, but typically does not directly apply
them in the performance of tasks that benefit the user.The separate applications
in a suite usually have a user interface that has some commonality making it
easier for the user to learn and use each application. And often they may have
some capability to interact with each other in ways beneficial to the user.
Language Classification
A programming language is an artificial language designed to express
computation that can be performed by a machine, particularly a computer.
Programming languages can be used to create programs that control the behavior
of a machine, to express algorithm precisely, or as a mode of human
communication. A programming language is a notation for writing programs
which are specifications of a computation or algorithm. Programming languages
can be classified into two categories:

1. Low leval Programming language

2. High level Programming language

low-level programming language is that Programming language provides little or


no abstraction from a computer's instruction set architecture . Low-level
languages can be converted to machine code without using a compiler or
interpreter, and the resulting code runs directly on the processor. A program
written in a low-level language can be made to run very fast, and with a very small
memory footprint.

Classification of low level programming language:

Machine language: The lowest-level programming language Machine languages


are the only language understood by computer . While easily understood by
computers, machine languages are almost impossible for humans to use because
they consist entirely of numbers. Programs , therefore, use either a high-level
programming language or an Assembly language

Advantages of machine language: 1) Translation free 2) High speed

Disadvantage of Machine Language:

1) Machine dependent 2) Complex Language 3) Error prone

4) Tedious.
Assembly language: An assembly language is a for low-level programming
language for computers and microprocessor. It implements a symbolic
representation of the binary machine code and other constants needed to
program a given CPU architecture.

Advantages of Assembly Language:

1) Easy to understand and use

2) Less error prone

3) Efficiency

4) More control on hardware

Disadvantage of assembly language:

1) Not portable

2) Slower than Machine language

High-level programming language- is a programming language with strong


abstraction from the details of the computer. In comparison to low level
Programming language, it may use natural language elements, be easier to use, or
be more portable across platforms. Such languages hide the details of CPU
operations such as memory access models and management of scope . The main

Advantage

High-level languages over low level Programming language is that they are easier
to read, write, and maintain. Ultimately, programs written in a high-level language
must be translated into machine language by a compiler or interpreter Example of
High level Programming language Java, C, Python, Scheme, Prolog, C++, C#, Java
script, Ruby.
Components of Computer System
Motherboard

The motherboard is the main component inside the case. It is a large rectangular
board with integrated circuitry that connects the various parts of the computer as
the CPU, RAM, Disk drives (CD, DVD, Hard disk or any others) as well as any other
peripherals connected via the ports or the expansion slots. Components directly
attached to the motherboard include:

1. The central processing unit (CPU) performs most of the calculations that
enable a computer to function and is sometimes referred to as the "brain" of the
computer. It is usually cooled by a heat sink and fan.

2. The chip set aids communication between the CPU and the other components
of the system, including main memory.

3 .RAM (Random Access Memory) stores all running processes (applications) and
the current running OS.

4. The BIOS includes boot firmware and power management. The Basic Input
Output System tasks are handled by operating system drivers.

5. Internal Buses connect the CPU to various internal components and to


expansion cards for graphics and sound.

You might also like