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 pointers function, Visual basic applications have very rich and fle...

Visual basic applications have very rich and flexible applications but there is single limitation when using pointer function. Windows API has limited support for function pointers

What is cache coherency, Cache coherence refers to the integrity of data st...

Cache coherence refers to the integrity of data stored in local caches of a shared resource. Cache coherence is a special case of memory coherence. When clients in a system, mainly

Three different types of convergences, Three dissimilar types of convergenc...

Three dissimilar types of convergences are: 1.  The convergence of e-commerce and wireless technology  2.  The Convergence of E-Commerce and IP Business-Grade Messaging 3

Events by which we can program "help texts", What are the events by which w...

What are the events by which we can program "help texts" and display "possible value lists"? -PROCESS ON HELP-REQUEST (POH). -PROCESS ON VALUE-REQUEST (POV).

Write a program to find 2''s complement of a binary number, Q. Write a pro...

Q. Write a program to find 1's and 2's complement of a Binary number. Perform necessary checking that if entered number is not a valid number, ask user to enter valid Binary n

What is an unsigned integer constant, What is an unsigned integer constant?...

What is an unsigned integer constant? An integer constant is the number in the range of - 32768 to + 32767; because an integer constant always gets two bytes in memory and in t

Passing parameters through stack, Q. Passing Parameters through Stack? ...

Q. Passing Parameters through Stack? The best scheme for parameter passing is through stack. It is also a standard scheme for passing parameters when assembly language is inter

Registers - processor, These will be independent of each other and will not...

These will be independent of each other and will not affect to each other, and so they can be fed into two different implementations units and run in parallel. The ability to remov

Single program multiple data, SPMD is actually a "high level" programming m...

SPMD is actually a "high level" programming model that can be built upon any combination of the previously mentioned parallel programming models. A single program is executed by al

Acting rationally - artificial intelligence, Acting Rationally: "Al" C...

Acting Rationally: "Al" Capone was finally convicted for tax evasion. Were the police reacting on rationally?? To solve this puzzle, we must first look at how the performance

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