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

What is the purpose of cdata in an xml document, Question: (a) What is...

Question: (a) What is the purpose of CDATA in an XML document? Explain your answer using extract codes. (b) Consider the following definition for an address element:

Support activities in supply chain management, What are the some support ac...

What are the some support activities in primary functions of Supply Chain Management? To support primary functions of Supply Chain Management there will be a company’s infrastr

Where can i find my user preferences?, Customized User Preferences offer tr...

Customized User Preferences offer tremendous versatility to your individual Bugzilla experience. Let's plunge into what you can do! The first step is to click the "Edit prefs" link

State some of the uses of ms access, MS Access provides a vast range of fun...

MS Access provides a vast range of functions some of them are ? It is used by small business, departments of large corporations, and by amateurs to make applications on their d

Explain policies for process scheduling, Explain any three policies for pro...

Explain any three policies for process scheduling that uses resource consumption information. All three policies for process scheduling are explained below in brief: 1. Fi

Explain what logic gets synthesized , What logic gets synthesized when I us...

What logic gets synthesized when I use an integer instead of a reg variable as a storage element? Is use of integer recommended? An  integer  can  take  place  of  a  reg  as

Iscuss the various functions of telephone switching systems, Discuss the va...

Discuss the various functions of telephone switching systems. Telephone switching system's functions are as follows: (i) Attending: The system should be continually monito

Syntax errors and logical errors, Syntax errors and logical errors: Syn...

Syntax errors and logical errors: Syntax errors also called as compilation errors are caused by violation of the grammar rules of the language. The compiler detects, isolate th

Evaluate total expense of algorithm, Q. Evaluate Total expense of algorithm...

Q. Evaluate Total expense of algorithm? Lastly, the total expense of algorithm is a product of the total number of processors required for computation and time complexity of th

Explain the importance of object oriented modelling, Explain the importance...

Explain the importance of Object Oriented Modelling It is important to note that wi t h the growing complexity of systems, significance of modelling techniques increases. Beca

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