Ask Question, Ask an Expert

+1-415-315-9853

info@mywordsolution.com

Ask Computer Engineering Expert

Part A:  Bitwise Logical and Shift Operations

Create a SPARC assembly language program that extracts a bit-field from the contents of register %l0. The position of the rightmost bit of the field is indicated in register %l1, and the number of bits in the field is indicated in register %l2. The extracted field should be put into register %l3, right-shifted so that field starts at bit 0; any bits outside of the extracted field should be set to 0. Structure your program so that it operates on 3 separate inputs, each with different input data, field positions, and field widths. Your TA will provide the inputs to work with. Do not hard code any bit masks; your program should create them using the appropriate bitwise operations. Optimize your program, eliminating nop instructions where possible. Do not use m4.

Use printf() to display in hexadecimal the contents of registers %l0, %l1, %l2 before each extraction, and %l3 afterwards. Also run your program in gdb, displaying the contents of registers %l0, %l1, %l2 before each extraction, and %l3 afterwards. Capture the gdb session using script. On a separate piece of paper, show the bit pattern for each hexadecimal number for the registers %l0 and %l3, circling the extracted field.

Part B:  Integer Multiplication using Add and Shift Operations

prepare a SPARC assembly language program that implements the following integer multiplication algorithm:

negative = multiplier >= 0 ? 0 : 1;
product = 0;
for (i = 0; i < 32; i++) {
    if (multiplier & 1)
        product += multiplicand;
    (product and multiplier registers combined as a unit) >> 1;
}
if (negative)
    product -= multiplicand;


Structure your program so that it shows 3 different multiplications: the first should multiply two positive numbers together, the second should multiply a positive number by a negative number, and the third should multiply two negative numbers together. Your TA will provide the input data to work with. Since we don’t yet know how to create subroutines, you can simply cut and paste the multiplication code to do each multiplication.

Use printf() to display in hexadecimal the contents of the product, multiplier and multiplicand registers before and after each multiplication. Optimize your program, eliminating nop instructions where possible. Do not use m4. Also run the program in gdb, displaying the contents of key registers as the program executes; you should show that the algorithm is working as expected. Capture the gdb session using script. On a separate piece of paper, show the bit pattern (binary number) for each hexadecimal number, and its decimal equivalent (in other words, show the binary and decimal values of the multiplier, multiplicand, and product).

Other Requirements
:

Make sure your code is properly formatted into columns, is readable and fully documented, and includes identifying information at the top of each file. You must comment each line of assembly code. Your code should also be well designed: make sure it is well organized, clear, and concise. Your TA will specify the inputs to use for the above two programs.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91804

Have any Question? 


Related Questions in Computer Engineering

Discussionif and chartsbullexplain in your own words the

Discussion "IF and Charts" • Explain in your own words the power of the IF function in Excel, and indicate at least one way in which a person could utilize this function in work or personal life. Provide a rationale for ...

You want to decide whether you should drive your car to

You want to decide whether you should drive your car to work or take the train. You know the one-way distance from your home to your place of work, and the fuel efficiency of your car (in miles per gallon). You also know ...

1 what is a virtual switching element2 why should a small

1. What is a virtual switching element? 2. Why should a small business opt to virtualize its computing resources? 3. In recent years, there has been a phenomenal growth in the business use of computing virtualization tec ...

Define the aspects of a swot analysis and how it can

Define the aspects of a SWOT analysis and how it can benefit a company.

1 implement a new version of the gameoflifepy program to

1. Implement a new version of the gameoflife.py program to use your SparseLifeGrid class from the previous question. 2. Repeat Exercise 2.5 from Chapter 2 but use your new version of the gameoflife.py program from the pr ...

Assignmentinstructions while it may sound simple to

Assignment Instructions: While it may sound simple to validate your HTML code, it is often times difficult to understand the error messages validation services return. Using the W3C Markup Validation Service, validate an ...

1 on average how many requests are being processed at any

1. On average, how many requests are being processed at any given instant? 2. If move to an 8-core system, ideally, what will happen to the system throughput (i.e., how many queries/second will the computer process)? 3. ...

The following training set is lineraly separabletrain by

The following training set is lineraly separable: Train (by hand) a linear threshold element on this training set. Your unit will have four inputs counting the one that implements the threshold. Assume that the initial v ...

1 the second line of the web server starting script puts

1. The second line of the Web server starting script puts the process ID number of the Web server wrapper into a file. Why? 2. This exercise reconsiders the use of NIS to distribute user information such as password hash ...

The cashregister class has an unfortunate limitation it is

The CashRegister class has an unfortunate limitation: It is closely tied to the coin system in the United States and Canada. Research the system used in most of Europe. Your goal is to produce a cash register that works ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

WalMart Identification of theory and critical discussion

Drawing on the prescribed text and/or relevant academic literature, produce a paper which discusses the nature of group

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro