Modular programming, Computer Engineering

Assignment Help:

Modular programming denotes to the practice of writing a program as a sequence of independently assembled source files. Every source file is a modular program intended to be assembled in a separate object file. Every object file constitutes a module. The linker collects the modules of a program in a coherent whole.

There are various reasons a programmer may choose to modularise a program.

1.  Modular programming allows breaking a large program in a number of smaller modules each one of more manageable size.

2. Modular programming makes possible to link source code written in two separate languages. A hybrid program written partly in assembly language and partly in higher level language necessarily involves at least one module for each language involved.

3. Modular programming enables for creation, maintenance as well as reuse of a library of generally used modules.

4.  Modules are easier to grasp.

5.  Different modules may be assigned to different programs.

6.  Debugging and testing may be done in a more orderly fashion.

7.  Document action can be easily understood.

8.  Modifications can be localised to a module.

A modular program can be signified using hierarchical diagram:

1326_MODULAR PROGRAMMING.png

The main advantages of modular programming are:

1.  Easier, smaller modules to manage

2.  Code repetition can be avoided by reusing modules.

We can split a program into subroutines or procedures. We need to CALL the procedure whenever needed. A subroutine call handovers the control to subroutine instructions and brings the control back to calling program.


Related Discussions:- Modular programming

Describe collective communications, Q. Collective Communications? A num...

Q. Collective Communications? A number of message-passing systems allow communication involving more than two processors. Such type of communication can be known as collective

Physics, derive an expression for vandar wall equation of state?

derive an expression for vandar wall equation of state?

Describe the importance of micro-programming, Question: (a) Describe t...

Question: (a) Describe the importance of Micro-Programming and point out one area where Micro-Programming is extensively used. (b) Below is a diagram of an 8086 processor.

What do you mean by communication traffic, Q. What do you mean by Communica...

Q. What do you mean by Communication Traffic? Communication Traffic offers a pictorial view of communication traffic in interconnection network with respect to time in progress

Explain the term- variables, Explain the term- Variables - Variables ar...

Explain the term- Variables - Variables are used for local storage of data -  Variables are usually not available to multiple processes and components. -  Variables would

What is replacement policy in cache, Q.What is Replacement Policy in cache?...

Q.What is Replacement Policy in cache? When a new block has to be fetched in cache the other block may have to be replaced to make room for new block. Replacement policy determ

Prove using boolean algebra, Q. Prove using Boolean Algebra 1. AB + AC ...

Q. Prove using Boolean Algebra 1. AB + AC + BC' = AC + BC' 2. (A+B+C) (A+B'+C') (A+B+C') (A+B'+C)=A 3. (A+B) (A'+B'+C) + AB = A+B 4. A'C + A'B + AB'C + BC = C + A'B

How debugger works internally, Whenever we compile with -g option, it will ...

Whenever we compile with -g option, it will make a symbol table, and according that table for every function and line it will call ptrace.

When the get cursor command used in interactive lists, When the get cursor ...

When the get cursor command used in interactive lists? If the hidden information is not enough to uniquely recognize the selected line, the command GET CURSOR is used.  The GET

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd