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

Encryption techniques to ensute secured transaction on net, Two popular enc...

Two popular encryption techniques to ensute secured transactions on the net? 1. Translation table 2. Word/byte rotation and XOR bit masking.

Does c have circular shift operators, No C don't have circular shift operat...

No C don't have circular shift operator. (Part of the reason why that is the sizes of C's types aren't precisely described----but a circular shift makes most sense when applied to

What are the functions of passes used in two-pass assembler, What are the f...

What are the functions of passes used in two-pass assembler? In an assembly language program, two pass translations can handle forward references early. The subsequent task

Describe target processor arrangements, Q. Describe target processor arrang...

Q. Describe target processor arrangements? Having seen how to describe one or more target processor arrangements we need to initiate mechanisms for distributing data arrays ove

What is the use of digital switch, What is the use of digital switch? ...

What is the use of digital switch? Digital switch: This is a device which handles digital signals generated at or passed via a telephone company’s central office further

Categorized the optimization transformations, Categorized Optimization tr...

Categorized Optimization transformations The structure of program and the way in that data is defined and used in this provide vital clues for optimization. Optimization t

State the advantages off-the-shelf, State the advantages Off-the-shelf ...

State the advantages Off-the-shelf -  tends to be less expensive as development costs can be spread over many users -  can be more sophisticated as large sales bring in c

Explain the basic architecture of digital switching systems, Explain the ba...

Explain the basic architecture of digital switching systems. An easy N X N time division space switch is demonstrated in figure. The switch can be shown in an equivalence for

Adding layers to the timeline, ADDING LAYERS TO THE TIMELINE AND GIVING MOT...

ADDING LAYERS TO THE TIMELINE AND GIVING MOTION TO THE LAYER Step 1:  Choose Layer from Common toolbar after that draw a layer. Step 2:  Write the text inside Layer. Step

Sap system configuration, SAP system configuration includes It include...

SAP system configuration includes It includes :- a) Dialog tasks b) Update tasks.

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