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

Define the architectural framework for electronic commerce, Define the Arch...

Define the Architectural framework for electronic commerce. An application independent framework to categorize service interaction relies onto four fundamental dimensions a.

What is random access memory, Q. What is Random Access Memory? We will ...

Q. What is Random Access Memory? We will discuss RAM as an example of sequential circuit. A memory unit is a collection of storage cells or flip flops along with associated cir

Explain about system deadlock, Q. Explain about System Deadlock? A dead...

Q. Explain about System Deadlock? A deadlock denotes to the condition when simultaneous processes are holding resources and putting off each other from finishing their executio

How will this difference b interpreted, How will this difference b interpre...

How will this difference b interpreted? When one pointer is subtracted from another pointer, the number of elements between the two pointers always includes the element pointed

Massively parallel system and scalability, Massively Parallel System Re...

Massively Parallel System Refers to a parallel computer system having a great number of processors. The number in a great number of keeps increasing and currently it means more

Explain about associative memory organisations, Q. Explain about Associativ...

Q. Explain about Associative Memory Organisations? The associative memory is arranged in w words with b bits per word. In w x b array, every bit is known as a cell. Every cell

Unification - artificial intelligence, Unification - Artificial intelligenc...

Unification - Artificial intelligence: We have said that the laws of inference for propositional logic detailed in the previous lecture can also be used in first-order logic.

What is multi-threaded unix kernel, Q. What is multi-threaded unix kernel? ...

Q. What is multi-threaded unix kernel? Multi-threaded UNIX kernel: We know threads are light-weight processors demanding minimal state information comprising the processor stat

Input - output devices using device controller, Q. Input - output Devices u...

Q. Input - output Devices using Device Controller? A device controller needs not to necessarily control a single device. It can typically control multiple I/O devices. It come

Define flash memory, Define Flash Memory. It is an approach same to EEP...

Define Flash Memory. It is an approach same to EEPROM technology. A flash cell is based on a one transistor controlled by trapped charge just like an EEPROM cell.

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