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

Double negation, Double Negation : All parents are forever correcting ...

Double Negation : All parents are forever correcting their children for the find of double negatives,  there we have to be very alert with them in natural language like: "He d

What is locality of reference, What is locality of reference? Analysis ...

What is locality of reference? Analysis of program represents that many instructions ion localized areas of the program are implemented repeatedly during some time period, and

Name the modes of 8255 programmable peripheral interface, What are the diff...

What are the different modes in that 8255 Programmable Peripheral Interface (PPI) can operate?  24 I/O lines in 3-8-bit port groups - A, B, C A, B can be 8-bit input

Explain the significance of binary data, Explain the Significance of Binary...

Explain the Significance of Binary Data Controlled devices generally contain registers that are made up of binary digits (bits). The following illustration shows how these regi

Determine octant to hexadecimal conversion, What is the Octant to hexadecim...

What is the Octant to hexadecimal conversion of 734 ? Ans. (734) 8      = (1 D C) 16 0001 ¦ 1101 ¦ 1100 1         D         C

Give some examples of malicious data, Give some examples of malicious data....

Give some examples of malicious data.  In May 2002, the Norton Anti-Virus software for Windows operating systems detects about 61000 malicious programs. Some of them are named

Features of mpi-1, Features of MPI-1 Binding for FORTRAN and C ...

Features of MPI-1 Binding for FORTRAN and C Collective communication Communication domains and Process groups Point-to-point communication Virtual process

Not dragged and dropped onto the form, I have to make a quiz machine progra...

I have to make a quiz machine program in in Visual Basic with the following: A menu strip that must be formed programmatically (ie NOT dragged and dropped onto the form). There

How to format expressions by using vba, Format functions can be used to for...

Format functions can be used to format lot of the expressions such as money, time, date, percentages and numbers. These functions are much easier to use in VBA. User defined date,

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