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 grid computing, (a) What is Grid computing? (b) What are the k...

(a) What is Grid computing? (b) What are the key distinctions between conventional distributed computing and Grid computing? (b) Describe how five features of Grid Computi

The need of parallel computation, The Need Of Parallel Computation With...

The Need Of Parallel Computation With the advancement of computer science (CS), computational speed of the processors has also improved many a time. Moreover, there is certain

Direct mapped strategy, Determine the layout of the specified cache for a C...

Determine the layout of the specified cache for a CPU that can address 1G x 32  of memory.  show the layout of the bits per cache location and the total number of locations.  a)

What are the exceptions encountered for fp operation, What are the exceptio...

What are the exceptions encountered for FP operation? The exceptions encountered for FP operation are overflow, underflow. /0, inexact and invalid values.

What is cache memory, Q. What is Cache Memory? Cache memory is a very f...

Q. What is Cache Memory? Cache memory is a very fast and small memory between CPU and main memory whose access time is closer to processing speed of CPU. It behaves as a high-s

Prepurchase and purchase consummation of consumer mercantile, Differentiate...

Differentiate between Prepurchase and Purchase Consummation of consumer mercantile model. The prepurchase interaction for consumers comprises three activities: Product/ser

DFD, Define software architecture and describe which types of architectures...

Define software architecture and describe which types of architectures can be used in Email or Facebook applications

Show the bus and memory transfers, Q. Show the Bus and Memory Transfers? ...

Q. Show the Bus and Memory Transfers? A digital computer has many registers and rather than connecting wires amid all registers to transfer information between them a common bu

Best method between linear and matrix addressing modes, Which of the best m...

Which of the best method between linear addressing and matrix addressing modes ? Ans: Best Method: Matrix Addressing is the suitable method, since this configuration on

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