Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

The following instruction is to be executed: sw $t1, 4($t2). The instruction is

ID: 3813644 • Letter: T

Question

The following instruction is to be executed: sw $t1, 4($t2). The instruction is located at 0x00401000. Assume that $t1 holds a -1 and $t2 holds 0x10010010

Give the values of the following

i. output of sign-extend

ii. output of shift left 2

iii. inputs to ALU control

iv. output from MUX before registers

v. output from MUX before ALU

vi. output from ALU

vii. output from adder at top left

viii. output from adder at top right

Add Read PC address Instruction H Instruction memory PCSrc Add result Shift Read ALUSrc ALU operation register 1 Read MemWrite data 1 Read MemtoReg Zero register 2 ALU ALU Registers Read data 2 M Read result Address data Write register Write data Write Data RegWrite data memory MemRead 16 Sign- extend

Explanation / Answer

#include <iostream>
#include <stdlib.h>
#include<conio.h>
#include<math.h>
#include<vector>
using namespace std;

int min(int arr[], int maxIndex)

   come back min;
}
int indexOf(int range,int arr[], int maxIndex)

   }
   come back index;
}
int mean(vector<int> vc )

void show(vector<int> vc )

   int iter =1;
   do
          
   groups[indexOf(min(row,k),row,k)].push_back(objects[i]);
   }
  
   for(int j=0;j<k;j++)
  
   }
   if(!isEqual(oldCluster,cluster,k))
  
   iter++;  
   }while(!isEqual(oldCluster,cluster,k));
   cout<<"nn";
   for(int i=0;i<k;i++)
   teams = new ArrayList<>();
input = new Scanner(System.in);

for (int i = 0; i < k; i++)

for (int i = 0; i < noOfItems; i++) {
System.out.println("Enter worth for: " + (i + 1) + " item");
dataItems.add(input.nextInt());
if (i < k) total = 0;
for (Integer worth : list) add = total + value;
}
come back total / list.size();
}
}#include <iostream>
#include <stdlib.h>
#include<conio.h>
#include<math.h>
#include<vector>
using namespace std;

int min(int arr[], int maxIndex)

   come back min;
}
int indexOf(int range,int arr[], int maxIndex)

   }
   come back index;
}
int mean(vector<int> vc )

void show(vector<int> vc )

   int iter =1;
   do
          
   groups[indexOf(min(row,k),row,k)].push_back(objects[i]);
   }
  
   for(int j=0;j<k;j++)
  
   }
   if(!isEqual(oldCluster,cluster,k))
  
   iter++;  
   }while(!isEqual(oldCluster,cluster,k));
   cout<<"nn";
   for(int i=0;i<k;i++)
   teams = new ArrayList<>();
input = new Scanner(System.in);

for (int i = 0; i < k; i++)

for (int i = 0; i < noOfItems; i++) {
System.out.println("Enter worth for: " + (i + 1) + " item");
dataItems.add(input.nextInt());
if (i < k) total = 0;
for (Integer worth : list) add = total + value;
}
come back total / list.size();
}
}