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

Difference between global and local variables, Global and Local Variables ...

Global and Local Variables Global variables: The features are as pursue Declared outside of all functions or before main. These can be used in all the functions in the progra

Is strategy - information system, IS strategy - Information System As ...

IS strategy - Information System As an operations manager when attempting to navigate your organisation through the information landscape and make best use of the available sy

Program which take input two images by homography, The goal of this questio...

The goal of this question is to create a program that takes as input two images that are related by a homography, and which "warps" the second image (piscine2.bmp) to align with th

What is function scope, What is Function scope Function scope: A labe...

What is Function scope Function scope: A label is the only part of identifier that has function scope. A label is declared implicitly by its use in a statement. Label names m

What specifies by environment variable in cgi script, The Environment varia...

The Environment variable SCRIPT_NAME in CGI script specifies? In CGI script gives the path of URL after server name.

What is a 3-d accelerator, What is a 3-D Accelerator?  3-D Accelerator...

What is a 3-D Accelerator?  3-D Accelerator is no magic technology. It is merely an accelerator chip which has built-in ability to perform the mathematics and algorithms neede

Define interrupt and isr, Define interrupt and ISR? An interrupt is a r...

Define interrupt and ISR? An interrupt is a request from an I/O device for service by the processor. The processor gives the requested service by implementing the interrupt ser

What will be the result of adding hexadecimal A6 to 3A, The result of addin...

The result of adding hexadecimal number A6 to 3A is ? Ans. The result will be E0.

What is rolap, Functioning of ROLAP happens concurrently with relational da...

Functioning of ROLAP happens concurrently with relational databases. Data and tables are stored as relational tables. To hold new information or data new tables are formed. Functio

Assembly Language program, How to get an output: Please enter a number betw...

How to get an output: Please enter a number between 0 and 6 (Enter to stop): 2 The Day of Week is Tuesday Please enter a number between 0 and 6 (Enter to stop): 9 Input Invalid Ple

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