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

Features of supply chain management, Features of Supply Chain Management ...

Features of Supply Chain Management Supply Chain Management Consultancy's scope is extensive, and typically contains:  1.  Sales order processing and customer service 2.

Free memory space to form contiguous block of free space, The OS of a compu...

The OS of a computer might be periodically collect all the free memory space to form contiguous block of free space.  Garbage collection

Explain the term - restating the requirements, Restating the Requirements ...

Restating the Requirements To have clarity of analytical model of system you must state requirements specific performance constraints with optimization criteria in one documen

Feasebility study, what are the feasibility study of online result manageme...

what are the feasibility study of online result management system?

What is single program multiple data, Q. What is Single Program Multiple Da...

Q. What is Single Program Multiple Data? A general style of writing data parallel programs for MIMD computers is SPMD (single program, multiple data) means all processors execu

Smli firewalls are different from the conventional, SMLI firewalls are diff...

SMLI firewalls are different from the conventional The SMLI firewalls are different from the conventional "stand in" proxies in a way that the stand-in proxies are used for th

Define memory allocation scheme in ''external'' fragmentation, The memory a...

The memory allocation scheme subject to “external” fragmentation is? Segmentation is the memory allocation scheme subject to “external” fragmentation.

What is the advantage of caching in a web browser, What is the advantage of...

What is the advantage of caching in a web browser? Like other application browsers utilize a cache to enhance document access. The browser places a copy of all items it retriev

How a file can be shared among different users, Discuss the different techn...

Discuss the different techniques with which a file can be shared among different users. Several popular techniques with that a file can be shared among various users are: 1

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