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

Signals and systems, Im doing computer engineering in Thailand.. Second yea...

Im doing computer engineering in Thailand.. Second year, and got project regarding sysnal and systems.. I and my team mates have no idea on what should we do.. Could u kindly sugge

What specifies by environment variable in cgi script, The Environment varia...

The Environment variable SCRIPT_NAME in CGI script specifies? In CGI script gives the path of URL after server name.

Objectives-classification of parallel computers , Objectives After goi...

Objectives After going through this unit, you should be able to: Describe the diffrent criteria on which classification of parallel computers are based; Examine the

What is e-cash, E-Cash:  E-cash is cash shown by two models. One is the...

E-Cash:  E-cash is cash shown by two models. One is the on-line form of e-cash (introduced by DigiCash) which permits for the completion of all types of internet transactions.

Returns information about present virtual machine, Q. Returns information a...

Q. Returns information about present virtual machine? int pvm_parent( void ) Returns the tid of process which spawned the calling process.  int pvm_tidtohost(

Explain the graphic display system, Q. Explain the graphic display system? ...

Q. Explain the graphic display system? The function of your graphic display system is to display bit-mapped graphics on your monitor.  The image displayed on your system so com

What is the difference between realloc() and free(), The free subroutine fr...

The free subroutine frees a block of memory lastly allocated by the malloc subroutine. Undefined results happen if the Pointer parameter is not a valid pointer. If the Pointer para

Calculate max distance so subscriber get speech reproduction, In a subscrib...

In a subscriber loop that contains a series resistance of 300 ohms to protect the batteries in the exchange, a normalized telephone draws 10 mA and its standard input d.c. resistan

How to working in dreamweaver, Q. How to Working in Dreamweaver? Let's ...

Q. How to Working in Dreamweaver? Let's now start our journey into the realm of Dreamweaver. We begin with typing in a few test lines in Design view. See that how our work area

Explain cause effect graphing, Explain cause effect graphing . Cause-ef...

Explain cause effect graphing . Cause-effect graphing is a test case design method that gives a concise representation of logical conditions and corresponding actions.  The

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