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

How to join to mwseries from power builder 8.0, Using CICS Transaction Gate...

Using CICS Transaction Gateway we can join MQ Series with Power Builder 8.0

What is pipelining, What is pipelining? The overlapping of implementati...

What is pipelining? The overlapping of implementation of successive instructions is known as pipelining.

Explain about the functionality of olap, Hyper cube or multidimensional cub...

Hyper cube or multidimensional cube forms the core of OLAP system. This having of measures which are arranged according to dimensions. Hyper cube Meta data is formed by star or sno

What is microfilm, What is microfilm? This is a photographic reproducti...

What is microfilm? This is a photographic reproduction of a document greatly decreased in size from the original on fine grain, high resolution film. Microfilm needs a reader f

What is the difference between activity and sequence diagram, The following...

The following are the difference among Activity and Sequence Diagrams: A sequence diagram represents the way of processes implement in a sequence. For example, the order of op

Explain crossbar exchange with all call processing steps, Explain crossbar ...

Explain crossbar exchange, with all call processing steps and diagrams. The fundamental idea of crossbar switching is to give a matrix of n x m sets of contacts with only n + m

Diffrence between RISC and CISC architecture, Q. Diffrence between RISC and...

Q. Diffrence between RISC and CISC architecture? CISCs provide better support for high-level languages since they include high-level language constructs such as CASE, CALL etc

Data manipulation is essential, Based on the variables, construct a design ...

Based on the variables, construct a design that haves only main effects of one categorical IV and at least 2 continuous DVs. Discuss what you think the relationship is among the de

Xternal report the parameters or select-options, Normal 0 false...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

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