CS609 System Programming Assignment No. 2 Solution Fall Semester 2012

Assignment No. 02
Semester: Fall 2012

CS609: System Programming


Total Marks: 20

Due Date: 19/11/2012

Instructions

Please read the following instructions carefully before submitting assignment:

It should be clear that your assignment will not get any credit if:

The assignment is submitted after due date.
The submitted assignment does not open or file is corrupt.
The submitted assignment does not compile or run.
Solution is copied from any other source.

Objective

The objective of this assignment is to enhance your knowledge about;

Basic concepts of Interrupts.
Learn how to write your own Interrupt Service Routine.
Understand the working of various services of Interrupts.

Assignment

Code a C-language program that shall include your own Interrupt Service Routine (ISR) who’s various services shall perform different mathematical operations as stated below:

User shall select service no. via AH register as we do in other interrupts and setting different values of AH means choosing different mathematical operation e.g.

AH=1 means we want to perform Addition

AH=2 means we want to perform Subtraction

AH=3 means we want to perform Multiplication

AH=4 means we want to perform Division

(Here we restrict ourselves to only these four basic operations)

Operands shall be passed to interrupt via Register BX and CX e.g. If want to multiply 5 and 6 then we may set BX=5 and CX=6 in our main program and after invoking your Interrupt, you have to collect and display the result in main(). Do write some sample piece of code in your main program to test these various operations.

Choose an unused Interrupt no. for your interrupt service routine in Interrupt Vector Table.

Submission

Sponsored Links

You are required to submit Your C-language program (.c file) through LMS.
You shall submit a complete program that shall contain both your ISR and its sample testing part in the main().
Do use proper comments with in your program so that it becomes easy to understand.