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

State disadvantages of object oriented analysis design, State Disadvantages...

State Disadvantages of object oriented analysis design You know that OO methods only create functional models within objects. There is no place in methodology to design a compl

Example of a router connects to at most networks, A router connects to at m...

A router connects to at most K networks. How many routers R are required to connect to N networks? Derive an equation that gives R in terms of N and K. If N K and K >=2 this

Explain real time systems, Q. Explain Real time system? A real time sys...

Q. Explain Real time system? A real time system defines an interactive processing system with severe time limitations. A real-time system is used whenever there are rigid time

What is tcas, tCAS is the number of clock cycles required to access a parti...

tCAS is the number of clock cycles required to access a particular column of data in SDRAM. CAS latency is the column address strobe time, sometimes referred to as tCL.

Determine about the security policy, Determine about the Security Policy ...

Determine about the Security Policy In the United States, the government has a separate organisation looking after the security measures and providing guidelines to all departm

Incorporating vbscript into htmlpage, To add scripts into your Web pages ta...

To add scripts into your Web pages tag is used. The tag signifies the start of the script section, whereas marks the end. An example of this is d

What information is stored in a typical TLB table entry, In a simple paging...

In a simple paging system, what information is stored in a typical Look-aside Buffers  TLB table entry? A classical TLB table entry contains page# and frame#, while a logical

Introduction to e-commerce, Have you heard about e-commerce? What place is ...

Have you heard about e-commerce? What place is e-commerce located at? What are e-commerce objectives? When did e-commerce starts? How e-commerce works? Who takes advantages of e-co

Find out the hexadecimal sum, Find the hex sum of (93) 16 + (DE) 16 ? Ans...

Find the hex sum of (93) 16 + (DE) 16 ? Ans. Hex Sum of (93) 16 + (DE) 16 Convert Hexadecimal numbers 93 and DE to there binary equivalent demonstrated below:- Hence (9

Explain salient points about indirect addressing, Q. Explain salient points...

Q. Explain salient points about indirect addressing? A number of salient points about this scheme are:  In this addressing scheme effective address EA and contents of th

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