LAYERS OF SOFTWARE TECHNOLOGY
OBJECT ORIENTED PROGRAMMING
(OOPS): (eg., C++, Java)
·
This is a High level language and it is having
an interactive feature of binding up of data and functions into one object to
interact with data and functions of the object using object name.
·
They have the some striking features as follows,
1.
Emphasis is on data rather than procedure.
2.
Programs are divided into what are known as
objects.
3.
Data structures are designed such that they
characterize the objects
4. Functions that operate on the data of an object
are tied together in the data structure.
5.
Data is hidden and cannot be accessed by
external functions.
6.
Objects may communicate with each other through
functions.
7.
New data and functions can be easily added
whenever necessary.
8.
Follows bottom up approach in program design.
PROCEDURE PROGRAMMING: (eg., C,
FORTRAN)
· They only contain functions and each function is
independent and works for given inputs. Unlike OOPD where functions can be
accessed through objects here we don’t need any object name to access a
function.
·
It is enough if we know the function name.
ASSEMBLY LANGUAGE:
·
These are simple instructions used for working
with hardware.
·
Each instruction can do only small operations
like move, jump, compare etc.,
·
So, they are called low level programming
language.
·
But this is a language which specifies which
parts of the hardware used directly in their instruction.
·
These are not written by programmers anymore but
compilers will do. But if more optimized code is needed there is no other way
to work out in assembly level, but it is tedious to find how the code is written by compiler.
· Programmers write code in higher level
languages like C, C++ etc., and they are converted to low level language.
·
Based on compiler design they will generate
assembly code in a different way and size of the code differs.
MACHINE LANGUAGE:-
·
This is the language that can be understood only
by hardware and this is basically a hexadecimal code.
·
These are read by processor and processed to do
various tasks over the inputs given to the hardware (processor).
·
Hex codes are generated by assembler from
assembly language based on instruction set used.
·
Instruction set is nothing but the instructions
that can be used for the processor for which we are going to program.
BINARY CODE(1's and 0's) :-
·
The Hex codes are read by processor as 1’s and
0’s. It is easy to convert Hex code to binary
·
Eg., Hex value of A3 equivalent binary value is
1010 0011.
·
Based on the binary values the processor does
certain operations within itself or with peripherals using ALU (Arithmetic and
logic Unit).