Given the following C program and the mapping of registers to variables, complete the MIPS implementation of procedure Sum. int Dif(int a, int b) { return b - a; } int Sum (int m, int n) { int p = Dif (n+1, m-1); int q = Dif (m+1, n-1); return p + q; } int main() { int x, y; z = x + y +Sum (x, y); return 0; } Registers Variables $s0 $s1 $s2 the result is stored in $s2: X y Z Note: Use the '+' button under the Registers display to initialize register values for $s0 and $s1. Hints: Use stack memory as needed and follow register conventions. Ex: If the values of $s0 and $s1 are initialized in the simulator as: Registers Data $50 5 $s1 10 Registers Data $50 $s1 $s2 сл 10 11

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
6.7 LAB: Nested procedures
Given the following C program and the mapping of registers to variables, complete the MIPS implementation of
procedure Sum.
int Dif(int a, int b) {
return b - a;
}
int Sum (int m, int n) {
Dif(n+1, m-1);
Dif (m+1, n-1);
}
int p
int q
}
=
=
return p + q;
int main() {
int x, y;
Z = x + y + Sum (x, y);
return 0;
Registers Variables
$SO
$s1
$s2
the result is stored in $s2:
X
y
N
Note: Use the '+' button under the Registers display to initialize register values for $s0 and $s1.
Hints: Use stack memory as needed and follow register conventions.
Ex: If the values of $50 and $s1 are initialized in the simulator as:
Registers Data
$SO
5
$s1 10
Registers Data
$s0
5
$S1
$s2 11
10
Transcribed Image Text:6.7 LAB: Nested procedures Given the following C program and the mapping of registers to variables, complete the MIPS implementation of procedure Sum. int Dif(int a, int b) { return b - a; } int Sum (int m, int n) { Dif(n+1, m-1); Dif (m+1, n-1); } int p int q } = = return p + q; int main() { int x, y; Z = x + y + Sum (x, y); return 0; Registers Variables $SO $s1 $s2 the result is stored in $s2: X y N Note: Use the '+' button under the Registers display to initialize register values for $s0 and $s1. Hints: Use stack memory as needed and follow register conventions. Ex: If the values of $50 and $s1 are initialized in the simulator as: Registers Data $SO 5 $s1 10 Registers Data $s0 5 $S1 $s2 11 10
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps

Blurred answer
Knowledge Booster
Properties of Different Architectures
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education