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

Hypertext markup language, Web pages or materials which are in the form of ...

Web pages or materials which are in the form of hypermedia documents accessed through Internet can be located anywhere in world. No matter from where they originated, most Web d

Explain naming convention globals, Explanation The values of global vari...

Explanation The values of global variables can be used and changed all over the project within all scripts and libraries. However it is highly recommended to remain the number o

How many methods used to control traffic flowing in-out, How many methods u...

How many methods used to control traffic flowing into and out of the network by firewall? Firewalls utilize one or more of three ways to control traffic flowing into and out of

Baic electrical, Ask question #Minimumstate and explain thevenins theorem a...

Ask question #Minimumstate and explain thevenins theorem as applicable to electrical circuits 100 words accepted#

Queueing process, explain in detail about queueing process

explain in detail about queueing process

Show the ranges of port numbers, Q. Show the ranges of Port numbers? P...

Q. Show the ranges of Port numbers? Port numbers are divided into three ranges: Well-known ports are those from 0 through 1,023. Registered ports are those from

Define a technique of temporarily removing inactive program, is a technique...

is a technique of temporarily removing inactive programs from the memory of computer system? Swapping is a technique of temporarily eliminating inactive programs from the memor

Depth in cutoff search, Depth in Cutoff search: The depth is chosen in...

Depth in Cutoff search: The depth is chosen in advance to certify in which the agent does not capture much more long to choose a move: however, if it has longer, well then we

EME, How can i made Carnot engine

How can i made Carnot engine

What are the types of calendars in a single interface, What are the types o...

What are the types of calendars in a single interface? Member Event calendar helps users manage their personal time, Kept track of meetings with others, and so on. Tea

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