Saturday, 14 December 2013

LAYERS OF SOFTWARE TECHNOLOGY

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).

                                   

No comments:

Post a Comment