1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Show the hex representation of MIPS instructions

  1. May 22, 2011 #1
    Hey all
    1. The problem statement, all variables and given/known data
    Here i want to translate them and show the hex representation of these instructions:
    1)add $t0, $t0, $zero
    2)lw $t2, 16($s3)

    2. Relevant equations
    3. The attempt at a solution
    eg. 2)
    lw | $s3 | $t2 | 16
    I-TYPE

    then translate the assembly code:
    35 | 19 | 10 | 16

    The solution is 0x8E6A0010
    But i 've no idea how the answer has been reached... Any help?
    Thank's a lot
     
    Last edited: May 22, 2011
  2. jcsd
  3. May 22, 2011 #2
    What is the context of this question? Should you be able to answer it on a test or is it a homework problem meant to familiarize you with your assembler? I would write the code, compile it, and view the answer by stepping through the code.
     
  4. May 22, 2011 #3
  5. May 23, 2011 #4

    lewando

    User Avatar
    Gold Member

    Looks like you have decomposed the assembly instruction correctly:

    3510 = instruction
    1910 = s
    1010 = t
    1610 = C

    Convert the base-10 values that you obtained into binary. Then group your binary results into the following I-type format:
    [iiiiiiss] [sssttttt] [CCCCCCCC] [CCCCCCCC]

    (use 6-bits of your instruction result, 5-bits of s, 5 of t, 16 bits of C, zero-padding as needed)

    Then convert each 8-bit group to its hexadecimal equivalent.
     
  6. May 23, 2011 #5
    thank you so much! cheers ;)
     
  7. May 23, 2011 #6
    Could you please show me the way to convert hex value 0x8E6A0010 to decimal?
     
    Last edited: May 23, 2011
  8. May 23, 2011 #7
    The nth digit corresponds to how many b^n's there are, starting at n = 0, where b is the base (16 here).

    0*16^0 + 1*16^1 + 0*16^2 + ... + 8*16^7
     
  9. May 23, 2011 #8
    Oo yeah... thank's man ;)
     
  10. May 23, 2011 #9
    No problem. That method works for converting any integer of any base into base 10 (you can even convert base 10 into base 10 with it).

    e.g.
    10110 base 2 = 0*2^0 + 1*2^1 + 1*2^2 + 0*2^3 + 1*2^4 = 2 + 4 + 16 = 22
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Similar Discussions: Show the hex representation of MIPS instructions
  1. Single instruction (Replies: 2)

  2. Hex to Oct (Replies: 13)

  3. MIPS help (Replies: 1)

Loading...