So far all the programs that we run on spim should be run


So far all the programs that we run on SPIM should be run on bare machine which has no user convenience. My slides on the 4th lecture notes show what settings you should choose. I am also attaching a screenshot here that shows the settings window. To get the setting dialog, for Windows, in the menu bar, click on "Simulator" then "Settings". For Mac, in the menu bar, click on "QtSpim" then "Preferences".

Every time when you run your program, you will see an error window which says "trying to execute non-instruction". You can just click "ok". That is because we don't load the exception handler. Later when we change the setting to allow exception handler, the error window will disappear. There are seven programming questions for you to do. Please submit seven .s or .asm files. (10 points) Write a program that puts the following bit pattern into register $1: 0xABCDEFFF

Write a program to do the following work: 1. Put the bit pattern 0x55555555 in register $1. 2. Shift the pattern to the left by one position into register $2. 3. Put the bitwise OR of $1 and $2 into register $3. 4. Put the bitwise AND of $1 and $2 into register $4. 5. Put the bitwise XOR of $1 and $2 into register $5. For each instruction, write a comment describing the result in the destination register after executing the instruction. (15 points) Start out a program with the instruction that puts a single one-bit into register $1: ori $1, $0, 0x01 Now by using only shift and register-to-register OR instructions, put the pattern 0xFFFFFFFF into register $1. DO NOT use any other ori instructions after the first one. DO NOT use any nor or not instructions. You can use as many registers as you want. 

Write a program that calculates 6x - 12 using only addition and shift instructions. x is a value that is stored in register $8. The program starts with the initialization: ori $8, $0, 42

The number 42 shouldn't appear in the further instructions.

Write a program to evaluate the polynomial 3x2 +5x-12 Pick a register to contain x and initialize it to an integer value (positive or negative) at the beginning of the program. Assume that x is small enough so that all products remain in the lo register. Evaluate the polynomial and leave its value in a register. 1 (15 points) Write a program that evaluates the rational function: (3x + 7)/(2x - y) Pick two registers to contain x and y, and initialize them to integer values (positive or negative) at the beginning of the program. Assume that x is small enough so that all products remain in the lo register. Evaluate the rational function and leave the quotient and remainder in two registers. 

Evaluate the expression: 24xy - 15x - 9y + 12 Use symbolic addresses x, y, and answer. Assume that the values are small enough so that all results fit into 32 bits. Since load delays are turned on in SPIM be careful what instructions are placed in the load delay slot. You can verify the correctness of your program by trying different values for x and y in the data section. When you hand in your solutions, you only need to leave one value for each of x and y.

Request for Solution File

Ask an Expert for Answer!!
Basic Computer Science: So far all the programs that we run on spim should be run
Reference No:- TGS01244099

Expected delivery within 24 Hours