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 compilers and interpreters with high level language, Define compiler...

Define compilers and interpreters with high level language? Both compilers and interpreters are available for most high-level languages. Though LISP and BASIC are in particular

Interrupt and scanning method of keypad operation, INTERRUPT METHOD - USING...

INTERRUPT METHOD - USING PORTB CHANGE INTERRUPT By using 4 by 4 matrix keypad connected to PORTA and PORTB. The rows are connected to PORTA-Low (RA1-RA4) and the columns are co

Re:- exam help, Hello there i have 4 exams of ICT and i am after a tutor wh...

Hello there i have 4 exams of ICT and i am after a tutor who can help me in those 4 subjects. One hour for each subjects will be good for me as i have sample papers ready for all s

How to set table properties in dreamweaver, Q. How to Set Table Properties ...

Q. How to Set Table Properties in dreamweaver? Now you will use table Property inspector to clear the extra space in navigation buttons table and to add a background color in t

Induction that your closed formula , Show by induction that your closed for...

Show by induction that your closed formula from (c) is the number of times that the given statement is implemented for a problem of size n.Note: if your proof is easily  a proof th

Perform binary addition, Q. Explain the following: a. BCD code b. Gra...

Q. Explain the following: a. BCD code b. Gray code c. Excess-3 code d. True complement method Q. Addition-Subtraction-Multiplication-Division: Perform Binary Addi

Describe the features of electronic banking, Question 1: The Banking Ac...

Question 1: The Banking Act provides for banking services through interactive electronic systems. (a) Describe the features of electronic banking. (b) Show the responsibi

Homework, ECE 3550 DIGITAL DESIGN FALL 2013 Homework Assignment #8 Total: 5...

ECE 3550 DIGITAL DESIGN FALL 2013 Homework Assignment #8 Total: 50 pts. Due 11:30am, Wednesday, November 13, 2013 The Potential Impact of the Google Glass on Personal Computing Sea

Queue depth should be greater than zero, Tell me which queue having present...

Tell me which queue having present queue depth should be greater than zero? Ans) Event queues Open MQ Explorer by selecting Start > Programs > IBM WebSphere MQ > WebSphere

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