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

Explain optimization process of pipelining, Q. Explain Optimization process...

Q. Explain Optimization process of Pipelining ? RISC machines can use a very efficient pipeline scheme due to the regular and simple instructions. Similarly all other instructi

Concept of temporal parallelism, Concept of Temporal Parallelism In ord...

Concept of Temporal Parallelism In order to describe what is meant by parallelism inherent in the answer of a problem, let us talk about an example of submission of electricity

Dbms, What are the disadvantages of file processing system?

What are the disadvantages of file processing system?

Define program counter, Define Program Counter(PC) The Program Counter ...

Define Program Counter(PC) The Program Counter holds the address of the next instruction to be read from memory after the current instruction is implemented.

Electric circuit analysis, mmmmmmmmmmmmm mmmmmmm s s s s s s s s s d d d ...

mmmmmmmmmmmmm mmmmmmm s s s s s s s s s d d d d d d d d d d d d d d f f ff g gg g g g g gg r r r rr r w ww w w ww w w

Retina - biometric computer security systems, Retina - Biometric Computer S...

Retina - Biometric Computer Security Systems The next security technology that explained in this report is retina security technology which is very famous in a lot of spy movi

What is asynchronous reset, What is Asynchronous Reset? Asynchronous re...

What is Asynchronous Reset? Asynchronous reset: The biggest problem along with asynchronous resets is the reset release, which termed as reset removal. By using an asynchron

What is binary, Binary is an alternative number system which works very goo...

Binary is an alternative number system which works very good for computers. Humans have ten fingers; that's probably why we use ten digits (0, 1, 2, 3, 4, 5, 6, 7, 8, and 9) in our

Integrated services digital network service, Whole idea of ISDN is to digit...

Whole idea of ISDN is to digitize the telephone network to permit transmission of video, audio and text over existing telephone lines. The purpose of ISDN is to provide fully integ

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