
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN: 9780133594140
Author: James Kurose, Keith Ross
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Write a MIPS assembly code program that asks the user to enter an unsigned number and read it. Then swap the bits at odd positions with those at even positions and display the resulting number. For example, if the user enters the number 9, which has binary representation of 1001, then bit 0 is swapped with bit 1, and bit 2 is swapped with bit 3, resulting in the binary number 0110. Thus, the program should display 6.
Example of the MIPS assembly code I went the answer on MIPS Code only!!!!

Transcribed Image Text:Steps for program:
Step 1:
Open the MIPS code
Step 2:
Locate the code containing lowercase and vice versa. The numbers
are used to represent letters.For example, letters "a" to "i" are
represented by numbers from 61 to 69. The letters "j" through "o"
are represented by 6A to 6F. The letters "p" through "y" are
represented by 70 to 79. The letter z is represented by 7A.
Program :
.data
lower: .ascii "aaaa"
upper: .ascii "xxxx"
.text
loop:
Ib $t1, lower($t0)
beq $t1, 0, exit
sub $t1, $t1, 32
sb $t1, lower($to)
add $t0, $t0, 1
j loop
Ib $t1, upper($t0)
beq $t2, 0, exit
sub $12, $t2, 32
sb $t2, upper($to)|
add $t0, $t0, 2
j loop
exit :
Iw $t1, lower
sw $t2, upper
li $v0, 10
syscal
Programming in assembly language is easy for memory swapping and
memory related purposes.
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution
Trending nowThis is a popular solution!
Step by stepSolved in 3 steps with 3 images

Knowledge Booster
Similar questions
- Write a program using signed 8-bit variables that computes finalVal = 2*X + 3*Y - Z. X, Y, and Z should be variables that are created in your .data section. Additionally, start with X = 1; Y should be set to five times the value of X. Z should be two times the value of X. Only X should be set in the data section; Y and Z should start uninitialized and then set in the main procedure as described. Create the program in assembly to compute finalVal. Does the value that is computed make sense (show work). In separate runs of the program double your value of X continuing to set the values for X, Y, and Z such that Y = 5X and Z = 2X until the value stored in finalVal no longer make sense. What are the values of X, Y, and Z before and after the result stored is correct. Show the contents in memory and describe why the value in finalVal no longer makes sense.arrow_forwardStart And Stop!Write an HLA Assembly language program that prompts for two specific int8 values named start and stop and then displays a repeated digit pattern starting with that number. The repeated digit pattern should show all the numbers beginning with the start value and then adding 1, 2, 3, 4, ... to this value until you hit a number greater than the stop value. Shown below is a sample program dialogue.Gimme a decimal value to use as a start: 6Gimme a decimal value to use as a stop: 78Here's your answer: 6_7_9_12_16_21_27_34_42_51_61_72_84Gimme a decimal value to use as a start: 8Gimme a decimal value to use as a stop: 31Here's your number: 8_9_11_14_18_23_29_36(Hint: The digit pattern is too large to store into any datatype we have learned to date so I am expecting that you will use a loop to print individual digits, rather than store the complete number in a variable.)arrow_forwardThe following MIPS assembly language program has errors, please help fix it: # MIPS program to correct bad data using Hamming codes .dataprompt: .asciiz "Enter a 12-bit Hamming code (in hex): "result: .asciiz "The entered code is correct!"error: .asciiz "The entered code is incorrect. The correct code is: "newline: .asciiz "\n" .text.globl main main: # Display prompt and read input from user li $v0, 4 # syscall code for printing a string la $a0, prompt # load address of prompt string into $a0 syscall # print prompt li $v0, 5 # syscall code for reading an integer syscall # read 12-bit Hamming code into $v0 # Calculate the parity bits move $t0, $v0 # move the code into temporary register $t0 andi $t1, $t0, 0x924 # compute parity bit P1 andi $t2, $t0, 0x492 # compute parity bit P2 andi $t3, $t0, 0x249 # compute parity bit P3 andi $t4, $t0, 0x3f # compute data bits D1-D6 xor $t5, $t1, $t2 #…arrow_forward
- WRITE THE FOLLOWING PROGRAM IN HIGH LEVEL ASSEMBLY LANGUAGE (HLA)arrow_forwardUsing MIPS in assembly language, you are to create a MIPS program that demonstrates that the associative law fails in addition for floating point numbers (single or double precision). You only need to demonstrate it for single precision. Remember the associative law is a + (b + c) = (a + b) + c. *Include a screenshot of the code running, Also have a lot of comments in your program as this is an assembly language program. Make the code neat and readable.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
- Computer Networking: A Top-Down Approach (7th Edi...Computer EngineeringISBN:9780133594140Author:James Kurose, Keith RossPublisher:PEARSONComputer Organization and Design MIPS Edition, Fi...Computer EngineeringISBN:9780124077263Author:David A. Patterson, John L. HennessyPublisher:Elsevier ScienceNetwork+ Guide to Networks (MindTap Course List)Computer EngineeringISBN:9781337569330Author:Jill West, Tamara Dean, Jean AndrewsPublisher:Cengage Learning
- Concepts of Database ManagementComputer EngineeringISBN:9781337093422Author:Joy L. Starks, Philip J. Pratt, Mary Z. LastPublisher:Cengage LearningPrelude to ProgrammingComputer EngineeringISBN:9780133750423Author:VENIT, StewartPublisher:Pearson EducationSc Business Data Communications and Networking, T...Computer EngineeringISBN:9781119368830Author:FITZGERALDPublisher:WILEY

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 Engineering
ISBN:9780124077263
Author:David A. Patterson, John L. Hennessy
Publisher:Elsevier Science

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
Computer Engineering
ISBN:9781337093422
Author:Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:Cengage Learning

Prelude to Programming
Computer Engineering
ISBN:9780133750423
Author:VENIT, Stewart
Publisher:Pearson Education

Sc Business Data Communications and Networking, T...
Computer Engineering
ISBN:9781119368830
Author:FITZGERALD
Publisher:WILEY