Translate assembly language program to machine , Computer Engineering

Assignment Help:

A useful exercise in understanding assembly language and its relation to machine language is to take a short assembly language program and translate it to machine language by hand.

The following program, countbits, counts the number of bits set to 1 in registers $4 and returns the result in register $6.

main: li $10, 32 # set up loop counter

li $6, 0 # clear output sum

main10: andi $12, $11, 1 # test current bit

beq $12, $0, main20 # skip count if not set

addi $6, $6, 1 # otherwise increment count

main20: srl $11, $11, 1 # shift input right

addi $10, $10, -1 # decrement count

bne $10, $0, main10 # continue until zero

li $2, 10 # Halt code

syscall

Translate this program to machine code by hand, explaining for each line how you worked out the machine instruction.

Although it might be tempting to simply let the SPIM assembler do this, the exercise is useful way of learning the MIPS instruction formats. Refer to Appendix B (Assemblers, Linkers and the SPIM simulator) of the text (4th Edition ) for descriptions of MIPS assembly language instructions and the corresponding machine codes.


Related Discussions:- Translate assembly language program to machine

A* search - artificial intelligence, A* Search - artificial intelligence: ...

A* Search - artificial intelligence: A* search in the combines is the best parts of uniform cost search, namely the fact that it's optimal and complete, and the other best par

What is simd, What is SIMD? Single Instruction stream, Multiple Data st...

What is SIMD? Single Instruction stream, Multiple Data stream (SIMD) shows an organization that contains many processing units under the supervision of a common control unit. A

Difference between the specparam and parameter constructs, What is the diff...

What is the difference between the specparam and parameter constructs? Specparam is a special kind of parameter which is intended to specify only timing and the delay values. K

Flat, nfa significance

nfa significance

Factor causing parallel overheads, Performance metrics aren't able to attai...

Performance metrics aren't able to attain a linear curve in comparison to increase in number of processors in parallel computer. The main reason for above situation is presence of

Component fulfil this requirement, A component has the time to failure dist...

A component has the time to failure distribution that is modelled as the Weibull distribution with shape parameter 3 and scale parameter of 36 months. This component is planned to

Explain session_start subroutines, Can you give an example of what might be...

Can you give an example of what might be best suited to place in the application_Start and Session_Start subroutines? Application Start - We can place code to initialize var

What are advantages and drawbacks of flip-flop, What are advantages and dra...

What are advantages and drawbacks of flip-flop? Usually area of a Flip-flop for features in more than a latch. Power consumption is normally higher, because of the area and

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd