Hello need help with my homework
QUESTION
Write a program in C and in MIPS assembly language program that:
Initializes an integer array with 3 rows and 5 columns:
1 2 3 4 5
- 6 7 8 9 10
11 12 13 14 15
- inputs a row and column number from the user
- main must call a child function (using jal in MIPS assembly) that calculates the memory address of the chosen row & column like this:
- int* arrayAddress( int row, int col, int ncolumns, array); //returns address of array[row][col]
- use shift instead of multiply where appropriate
- print the address and the value of the chosen array element
You must submit THREE files:
- 1) Your .asm MIPS assembly file – it MUST be in the style / format of the prompt and MIPS .asm example filesLinks to an external site.(labels: start in first column, tab to instruction mnemonics, tab to operands, tab to comment, etc.) The arguments passed from your main program should be row in $a0, col in $a1, ncolumns in $a2, and base address of the array in $a3 and the address return value should be in $v0 when the arrayAddress() child function returns.
- 2) Your .c source file accessing the array by calling the child function arrayAddress( int row, int col, int ncolumns, array) which uses pointer arithmetic to return the address of array[row][col].
- 3) A brief report document file in .pdf .doc or .docx including:
a QUESTION of the program
2 screen shots showing each one (C and MIPS version) working
Get your college paper done by experts
Do my question How much will it cost?Place an order in 3 easy steps. Takes less than 5 mins.
Leave a Reply
Want to join the discussion?Feel free to contribute!