You have the following high level C code: long long int midterm22_pr1(long long int i, long long int j, short int A) { while (A[5*i+1] == 7*j) && (i > 0)) { long long int f; i - i - (5+7); j = j + (5+7); f = 7 *j; return f; } Arguments: i, j, A (or else A[@])stored in x12, x13, x14. Result: returned in x16 diatinati

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

Part 1: 

Write the corresponding RISC-V code that implements the above C function as a
callee/procedure within your main function (main is the caller). 

 

Part 2: 

Assume that variable i is initialized to 60 (decimal) and j initialized to 30 (decimal).
What is the total number of RISC-V instructions executed when we have the maximum possible
iterations? When does that happen?

You have the following high level C code:
long long int midterm22_pr1(long long int i, long long int j, short int A) {
while (A[5*i+1] == 7*j) && (i > 0)) {
long long int f;
i = i - (5+7);
j = j + (5+7);
f = 7 *j;
}
return f;
}
Arguments: i, j, A (or else A[0])stored in x12, x13, x14.
Result: returned in x16
For your computations use any registers you want but make a distinction whether they are saved
or temp, using the stack if needed, where needed. Also, make sure your callee returns to the main
function. You may use Labels such as Loop1, Loop2, ... Exit1, Exit2..
NOTE: please do not forget to map each data type to the correct number of bytes: check every
single variable about how many bytes it holds in memory: 1,2, 4, 8, 16 bytes?
The mapping of Data Types to Byte Lengths is recorded below:
Туре Name
32-bit size CPU
64-bit size CPU
short
2 bytes
4 bytes
4 bytes
8 bytes
2 bytes
4 bytes
8 bytes
8 bytes
int
long int
long long int
Transcribed Image Text:You have the following high level C code: long long int midterm22_pr1(long long int i, long long int j, short int A) { while (A[5*i+1] == 7*j) && (i > 0)) { long long int f; i = i - (5+7); j = j + (5+7); f = 7 *j; } return f; } Arguments: i, j, A (or else A[0])stored in x12, x13, x14. Result: returned in x16 For your computations use any registers you want but make a distinction whether they are saved or temp, using the stack if needed, where needed. Also, make sure your callee returns to the main function. You may use Labels such as Loop1, Loop2, ... Exit1, Exit2.. NOTE: please do not forget to map each data type to the correct number of bytes: check every single variable about how many bytes it holds in memory: 1,2, 4, 8, 16 bytes? The mapping of Data Types to Byte Lengths is recorded below: Туре Name 32-bit size CPU 64-bit size CPU short 2 bytes 4 bytes 4 bytes 8 bytes 2 bytes 4 bytes 8 bytes 8 bytes int long int long long int
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY