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 a pointer, What is a pointer? The register or memory location t...

What is a pointer? The register or memory location that having the address of an operand is known as a pointer.

What are conditional chain statement, What are conditional chain statement?...

What are conditional chain statement? ON CHAIN-INPUT similar to ON INPUT. The ABAP/4 module is called if any one of the fields in the chain having a value other than its in

What is an operating system, What is an operating system? An operating...

What is an operating system? An operating system is system software which provides interface between hardware and user. The operating system gives the means for the proper uti

What is processor time of a program, What is processor time of a program? ...

What is processor time of a program? The periods during which the processor is active is known as processor time of a program it depends on the hardware included in the executi

Uniform path cost search - artificial intelligence, Uniform Path Cost Searc...

Uniform Path Cost Search - artificial intelligence: A breadth first search will find the solution with the shortest path length from the initial state to the goal state. In fa

While using ftp what is wildcard expansion in file names, While using FTP w...

While using FTP what is wildcard expansion in file names? To make this easy for users to identify a set of file names, FTP permits a remote computer system to perform usual fil

Identify the main enhancements brought along by tkip, Question: (a) Id...

Question: (a) Identify the four main enhancements brought along by TKIP on WPA to solve the problems in WEP. (b) The term WarDriving has been frequently used while talking

Smli firewalls are different from the conventional, SMLI firewalls are diff...

SMLI firewalls are different from the conventional The SMLI firewalls are different from the conventional "stand in" proxies in a way that the stand-in proxies are used for th

Discuss about fourth generation electronic computers, Fourth Generation (19...

Fourth Generation (1972-1984) The next generation of computer systems used the large scale integration (LSI -1000 devices per chip) and very large scale integration (VLSI - 100

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