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 sgml, SGML is very large, influential, and difficult. It has been i...

SGML is very large, influential, and difficult. It has been in important industrial and commercial use for nearly two decades, and there is a important body of expertise and softwa

Explain the working of a binary counter, In binary counter the flip flop of...

In binary counter the flip flop of lowest order position is complemented with each pulse. This means that JK input position must be maintained with logic one

Explain 100 line exchange with two-motion line finders, Explain 100 line ex...

Explain 100 line exchange with two-motion line finders. Design: In such design, here are 24 line finders. When any of the 100 subscribers has to find access to any of the 24

What is the syntax of the assembler directive equ, The syntax of the assemb...

The syntax of the assembler directive EQU is ? Ans. The syntax of the assembler directive EQU is as given below: EQU

State about the machine language programs, State about the machine language...

State about the machine language programs The computer can run only machine language programs, one needs to translate above programs to machine language programs. To translate

Numbers square, Your professor wants you to fill a two-dimensional N by N m...

Your professor wants you to fill a two-dimensional N by N matrix with some numbers by following a specific pattern. According to his explanation as in the figure below, you have to

Failures, FAILURES Since reliability engineering is focused on the surv...

FAILURES Since reliability engineering is focused on the survivability or absence of failures, it is more concerned about failures,  understanding  their causes and defining re

Computer architecture, what is complex instruction set computer and reduce...

what is complex instruction set computer and reduced complex instruction set computer

Signed 1’s complement representation, Q. Signed 1s complement representatio...

Q. Signed 1s complement representation? Another possibility that is also simple is use of signed 1's complement. Signed 1's complement has a principal. Add both numbers includi

First order logic, "George has a dog called Ernie, which is a trained Labra...

"George has a dog called Ernie, which is a trained Labrador. Trained Labradors and poodles are obedient, and all obedient dogs are good dogs. All good dogs that have a master will

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