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 super scalar architecture, Super scalar architecture Pentium m...

Super scalar architecture Pentium microprocessor is organized with three execution units. One executes floating-point instructions and other two (U-pipe and V-pipe) execute in

Explain multithreading in a programming language, Multithreading is the pro...

Multithreading is the process in which more than single thread run independent of each other within the process in any programming language such as C, C++, etc.

Bilinear interpolated images , Transfer  Functions Change the last bili...

Transfer  Functions Change the last bilinear interpolated images and the original images into the frequency domain using the FFT.  Try to measure the magnitude transfer functio

Enumerate data structures used during 1-pass of assembler, Enumerate the da...

Enumerate the data structures used during the first pass of the assembler. Indicate the fields of these data structures and their purpose/usage. Three main data structures used

Do we require an x server to run in batch mode for gimp, Yes, you have to h...

Yes, you have to have some form of X server (unless you're running Windows, of course). It requires an X server for image processing, and for font manipulation. Though, if you wish

The periodic table of elements, Make a data structure to store information ...

Make a data structure to store information about the elements in the periodic table of elements.  For each element, store the name, atomic number, chemical symbol, class, atomic we

Basic need of random access memory, Q. Basic need of Random Access Memory? ...

Q. Basic need of Random Access Memory? Main memory is Random access memory. It is generally organised as words of fixed length. Length of a word is termed as word length. Every

The different storage classes in c, What are the different storage classes ...

What are the different storage classes in C?  Storage classes in C  There are four storage classes in C:  a. Automatic storage class:  b. Register storage class:  c

Define grid computing, GRID COMPUTING Grid Computing signifies applying...

GRID COMPUTING Grid Computing signifies applying resources of different computers in a network concurrently to a single problem for solving a scientific or technical problem wh

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