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 over-clocking, Overclocking is the process of making a computer or ...

Overclocking is the process of making a computer or component operate faster than the clock frequency particular by the manufacturer by modifying system parameters. One of the most

What is mqseries channel, Channel means logical communication link. There a...

Channel means logical communication link. There are two parts of channels a) Message channel, b) MQI channel   1) Mesage channel use for communication among QMgr to Q

Data warehouse, 1) Define a job scheduling strategy that will meet business...

1) Define a job scheduling strategy that will meet business requirement of reporting availability by 6am CST for the following cubes? Show the job scheduling dependencies in a pict

What is the difference between swapping and paging, What is the difference ...

What is the difference between Swapping and Paging? Swapping: Entire process is moved from the swap device to the major memory for implementation. Process size must be less t

Quantity amounts (data type quan), A field containing quantity amounts (dat...

A field containing quantity amounts (data type QUAN) must be assigned to a reference table and a reference field. Explain? As a reference table, a system table having all the v

How testmanager manage test logs, When a robot scripts runs the output make...

When a robot scripts runs the output makes a test log. Test logs are managed now is the TestManager application. Rational now permits you to classify your logs into any type of for

Ellipse follows the perimeter of the window, A) Execute a program where an ...

A) Execute a program where an ellipse follows the perimeter of the window. B)  Execute a program that can draw graphs, possibly following your plan from last week. Have it graph

What is meant by common control, What is meant by common control? In se...

What is meant by common control? In several switching systems, the control subsystem may be an integral part of the switching network itself. This system is termed as direct co

Explain the working of a 4-bit SISO shift register, Using D-Flip flops and ...

Using D-Flip flops and waveforms explain the working of a 4-bit SISO shift register. Ans. Serial In-Serail Out Shift Register: Fig.(a) demonstrates a 4 bit serial in-serial out

How e-commerce website works, Procedure The only difference between e-...

Procedure The only difference between e-commerce and conventional commerce is that goods in e-commerce are purchased over the internet using a credit card. Also buying and sel

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