Question

In: Computer Science

Two integer numbers a=10 and b=20 are stored in the data segment of the memory. The...

  1. Two integer numbers a=10 and b=20 are stored in the data segment of the memory. The number a is stored in Mem[0x10010000] and b is stored in Mem[0x10010004]. Write MIPS assembly code to swap the two numbers, load a to a register, b to another register and store a at Mem[0x10010004], store b at Mem[0x10010000].

Solutions

Expert Solution

code:

.text
li $a,0x10010000 //loading a value into memory location
li $b,0x10010004 //loading b value into memory location

move $t,$a //moving a value to new register

move $a,,$b       //swapping a and b value

move $b,$t //swapping a to b

syscall

code screenshot:

output:


Related Solutions

The following code segment is stored in memory starting at memory location 0x00445670. What are the...
The following code segment is stored in memory starting at memory location 0x00445670. What are the two possible values for the contents of the PC after the branch instruction has executed?       bgez $a0, skip                      # mem location: 0x00445670 subu $s2, $s1, $t0 # branch NOT taken (false) ori    $v0, $t1, 0x0003 #       skip: addi $t0, $t1, 2 # branch taken (true) if taken: if not taken: Hint: Remember how many bytes each instructions takes.
1.) What type of data is stored in a pointer? a. an integer b. a character...
1.) What type of data is stored in a pointer? a. an integer b. a character c. A memory address d. None of the above 2.) A stack in used to implement method calls in a program. True or Flase?
Write an Intel 8085 assembly program to find the largest of N numbers stored in memory...
Write an Intel 8085 assembly program to find the largest of N numbers stored in memory using the algorithm below. Hand trace (execute) the program showing the changes made to all affected registers and memory locations. Max = a(1) For i = n to N If max < a(i) then max = a(i) Next i
There will be 10 numbers stored contiguously in the computer at location x7000 . Write a...
There will be 10 numbers stored contiguously in the computer at location x7000 . Write a complete LC-3 program, starting at location x3000, that will find the location of the smallest number and swap its location with the number in location x7000. For example, Suppose the following numbers are stored at location x7000: x7000 123F                                                                            x7000 0042 x7001 6534                                                                            x7001 6534 x7002 300F                                                                            x7002 300F x7003 4005                after the program is run, memory       x7003 4005 x7004 3F19                would look like----à                         ...
Determine the memory address of A[3], A[10], A[20] a) given int A[] b) given short A[]...
Determine the memory address of A[3], A[10], A[20] a) given int A[] b) given short A[] c) given char A[]
The unsigned decimal value (1,036)10 is to be stored as a 16-bit word in memory. Show...
The unsigned decimal value (1,036)10 is to be stored as a 16-bit word in memory. Show the 16-bit unsigned binary representation of (1,036)10. Show the 4-digit unsigned hexadecimal representation of (1,036)10. The unsigned binary value of part (a) should be stored using two bytes of a byte-addressable memory at locations 400 and 401. Specify the hexadecimal value in each byte for a “big endian” instruction set architecture. Give your answer by showing a table like the one below.                                                                                               ...
for python 3 a. Ask the user to enter 10 numbers. Each number is stored in...
for python 3 a. Ask the user to enter 10 numbers. Each number is stored in a list called myList. Compute and print out the sum and average of the items in the list. Print the numbers that are divisible by 2 from myList. b. Instead of using a list to store the numbers, create a loop to accept the numbers from the user, and find the average of all the numbers. Hint: use an accumulator to store the numbers...
Write a program in Easy68K: a) Define an array of numbers in the memory. b) Read...
Write a program in Easy68K: a) Define an array of numbers in the memory. b) Read two numbers from keyboard. The first number is the size of the array and the second number is what index of the array you want to access. The index you entered can be larger than the array. c) Display the element indexed by (index % size) in the array.
Let a , b , c be three integer numbers. Write a C++ program with a...
Let a , b , c be three integer numbers. Write a C++ program with a functions void rotate1(int* a,int* b,int* c) void rotate2(int& a,int& b,int& c) such that a -> b , b -> c and c -> a. Thus we use two different approaches (pointers in rotate1 and references in rotate2).
The Sum and The Average In C++, Write a program that reads in 10 integer numbers....
The Sum and The Average In C++, Write a program that reads in 10 integer numbers. Your program should do the following things: Use a Do statement Determine the number positive or negative Count the numbers of positive numbers, and negative Outputs the sum of: all the numbers greater than zero all the numbers less than zero (which will be a negative number or zero) all the numbers Calculate the average of all the numbers. The user enters the ten...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT