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

Make an instruction execution feasible, Q. Make an instruction execution fe...

Q. Make an instruction execution feasible? What are the functions that a control unit performs to make an instruction execution feasible? Instruction execution is achieved by e

Differences b/w user level and kernel supported threads, What are the diffe...

What are the differences between user level threads and kernel supported threads? A thread, sometimes termed a lightweight process (LWP), is a fundamental unit of CPU utilizati

Explain about zip drive, Q. Explain about Zip Drive? Zip Drive: Loads...

Q. Explain about Zip Drive? Zip Drive: Loads of files, Volumes of data have definitely increased onus on today's computer user and protection of this data is what bugs every

What is a multiple line field, What is a multiple line field? A multipl...

What is a multiple line field? A multiple line field is a special part of field which allows the user to enter multiple lines of data into it.

Assignment, zero, one, two three address instructions

zero, one, two three address instructions

Dbms, Disadvantages of file processing system

Disadvantages of file processing system

System analysis and design, write an algorithm on railway reservation ticke...

write an algorithm on railway reservation ticket window

What is branch folding, What is branch folding? The instruction fetch u...

What is branch folding? The instruction fetch unit has implemented the branch instruction concurrently with the implementation of other instructions. This technique is referred

What is metropolitan area network, Q. What is Metropolitan Area Network? ...

Q. What is Metropolitan Area Network? Metropolitan Area Network (MAN):  It is privately or public owned communication system that naturally covers a complete city. Speed is abo

Dynamic configuration of parallel virtual machine, Q. Dynamic Configuration...

Q. Dynamic Configuration of parallel virtual machine? int pvm_addhosts( char **hosts, int nhost, int *infos ) Add hosts to virtual machine. hosts is an arra

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