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

Drawback of the system using disk caching, Q. Drawback of the system using ...

Q. Drawback of the system using disk caching? The main drawback of the system using disk caching is risking loss of updated information in event of machine failures like loss o

Ease of learning - user friendliness, Ease of Learning - User Friendliness ...

Ease of Learning - User Friendliness Much has been made recently of increasing sophistication in technology with one of the major benefits advertised as an increase in somethi

Explain the following gray code, Q. Explain the following: a) Gray code ...

Q. Explain the following: a) Gray code b) Parity code c) Overflow Q. Give the counting up to 30 in Base 5. Q. Convert (175.6)8 into Gray code and Excess-3 code.

Show the connection between different networks, Q. Show the Connection betw...

Q. Show the Connection between different networks? The connection between different stages is made in following manner:  all outputs of 1 st crossbar switch of first stage a

Explain non-adapting routing, Explain non-adapting routing. Systems whi...

Explain non-adapting routing. Systems which do not implement adaptive routing are explained as using non-adapting or static routing, which routes by a network are explained by

Control dependence, Control Dependence Segments or Instructions in a pr...

Control Dependence Segments or Instructions in a program may obtain control structures. Thus, dependency between the statements can also be in control structures. But the order

Show SNMPs representation in ASN.1 syntax, An SNMP integer whose value is 2...

An SNMP integer whose value is 200 has to be transmitted. Show its representation in ASN.1 syntax. An ASN.1 transfer syntax describes how values of ASN.1 types are unambiguousl

How does cpu know that an interrupt has taken place, How does CPU know that...

How does CPU know that an interrupt has taken place? There needs to be a line or a register or status word in CPU which can be increased on occurrence of interrupt situation.

What are overlays, What are overlays? To enable a process to be larger ...

What are overlays? To enable a process to be larger than the amount of memory allocated to it, overlays are used. The idea of overlays is to keep in memory only those instructi

Information distribution, INFORMATION DISTRIBUTION: The organization and m...

INFORMATION DISTRIBUTION: The organization and management of any institution, be it an isolated lab or a large site with many labs, requires that information is managed. Methods o

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