Question: _________Program using MIPs, MARS___________ In this program we take a decimal number and convert it into a Hex number, for example -559038737 --> 0xDEADBEEF ____________________

_________Program using MIPs, MARS___________

In this program we take a decimal number and convert it into a Hex number, for example -559038737 --> 0xDEADBEEF

____________________

# Write a MIPS code that asks the user for decimal number

# Convert it to hex and print the result

.data

prompt: .asciiz "Enter the decimal number to convert: "

ans: .asciiz " Hexadecimal equivalent: "

result: .space 8

.text

.globl main

main:

la $a0, prompt

li $v0, 4

syscall

li $v0, 5

syscall

move $t2, $v0

la $a0, ans

li $v0, 4

syscall

li $t0, 8 # counter

la $t3, result # where answer will be stored

Loop:

beqz $t0, Exit # branch to exit if counter is equal to zero

rol $t2, $t2, 4 # rotate 4 bits to the left

and $t4, $t2, 0xf # mask with 1111

ble $t4, 9, Sum # if less than or equal to nine, branch to sum

addi $t4, $t4, 55 # if greater than nine, add 55

b End

Sum:

addi $t4, $t4, 48 # add 48 to result

End:

sb $t4, 0($t3) # store hex digit into result

addi $t3, $t3, 1 # increment address counter

addi $t0, $t0, -1 # decrement loop counter

j Loop

Exit:

la $a0, result

li $v0, 4

syscall

la $v0, 10

syscall

__________________________

Reverse this program so that you input hex numbers and it will output decimal number

0xDEADBEEF -- > -559038737

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!