(5/5)

# Write a single program that will compute the value of a function where the independent variable is some random input value.

INSTRUCTIONS TO CANDIDATES

Write a single program that will compute the value of a function where the independent variable is some random input value.

1. In order to randomly generate integer values in Assembler we need to use two procedures just as in C++. We first initialize the seed with randomize which does not take any parameters. It is important to understand that this procedure must only be called once in a program otherwise the values generated will not be random.

Be Careful!, Never put the call to randomize inside a loop or another procedure.

2. The procedure named randomrange is the one which generates the numbers. Register EAX must be set to a number. The procedure will generate a number between 0 and EAX minus 1 and return it in register EAX. You may have to add and/or subtract values from EAX to get the correct range.

3. Use randomrange to generate a value for x from – 8 to +12.

4. Based on the value of x, calculate the value of the function: ƒ(𝑥) = −𝑥3 + 14𝑥 − 3. Test your program with the 20 random values from – 8 to +12. Make sure to use the imul, multiplication instruction to evaluate 14𝑥. The output message must be of the form:

f(#) = #

5. Put your program in a loop to generate 20 different values of x and calculate f(x). In order to put the code in a loop use the loop instruction. This instruction must be used only with register ECX and no other register.

Note: (1) As long as ECX is not zero it continues to loop back to the label Lp1. The loop instruction decreases ECX automatically each time it is executed. (2) The naming convention for labels in Assembler follows the same rules as for regular variables.

mov ecx, 20 ; ECX set to 20: It will Loop 20 times.

Lp1: ; ----------- ; Label to branch back until ECX = 0

; your code ; Each time ECX is decreased by 1 until 0.

; ;

loop Lp1 ; Lp1 is a label to jump back to.

6. Expected output for the possible values required:

f(-8) = 397 f(-2)= -23 f(4) = -11 f(10) = -863

f(-7) = 242 f(-1)= -16 f(5) = -58 f(11) = -1180

f(-6) = 129 f(0) = -3 f(6) = -135 f(12) = -1563

f(-5) = 52 f(1) = 10 f(7) = -248

f(-4) = 5 f(2) = 17 f(8) = -403

f(-3) = -18 f(3) = 12 f(9) = -606

(5/5)

## Related Questions

##### . Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

##### . The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

##### . Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

##### . SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

##### . Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Hire Me

Hire Me