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

Give a simple example of dynamic modelling, Give a simple example of dynami...

Give a simple example of dynamic modelling using these notation A simple example using these notation is shown below in Figure:

How does the race condition occur, It happens when two or more processes ar...

It happens when two or more processes are reading or writing some joint data and the final result depends on who runs exactly when.

What is gui status, What is GUI status? How to create /Edit GUI status? ...

What is GUI status? How to create /Edit GUI status? A GUI status is a subset of the interface elements used for a certain screen. The status comprises those elements that are c

Difference between panel and group box classes, Difference between Panel an...

Difference between Panel and Group Box classes? Panel & Group box both can used as container for other controls like radio buttons & check box. The dissimilarity in panel & gro

Illustrate single in-line memory modules, Q. Illustrate Single In-line Memo...

Q. Illustrate Single In-line Memory Modules? From early days of semiconductor memory till the early 1990s memory was manufactured, brought and installed as a single chip. Chip

Explain language processing, System Software 1. Explain language proces...

System Software 1. Explain language processing? Explain its activities in detail. 2. Discuss briefly about Assembler directives. Also explain about Macro definition and call

What do you mean by ssi chips, Q. What do you mean by SSI chips? The 3 ...

Q. What do you mean by SSI chips? The 3 rd generation computers mostly used SSI chips. One of the key concepts that were brought forward for the duration of this time was conc

The method(s) of payment for online consumers, The method(s) of payment for...

The method(s) of payment for online consumers are A) Electronic cash    (B) Credit/debit C) Electronic checks

Define the term electronic cheques in briefly, Define the term Electronic C...

Define the term Electronic Cheques in briefly. The other mechanism for Internet payment is electronic cheques. Along with electronic cheques, there payer (either a business or

Name some pure object oriented languages, Some pure object oriented languag...

Some pure object oriented languages are Smalltalk, Eiffel,  Java, Sather.

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