Calculates the odds of winning any of the lottery jackpot

Assignment Help Assembly Language
Reference no: EM131135889

There are many lottery schemes available across the world. Write a MIPS Assembly language program that will calculate the odds of winning the Jackpot prize. For example:

o The Euro Millions lottery requires matching 5 numbers from a pool of 50 numbers and matching 2 numbers from a second pool of 11 numbers.

o The Mega Millions lottery requires matching 5 from 75 and 1 from 15.

o The Thunderball lottery requires matching 5 from 39 and matching 1 from 14.

o The PowerBall lottery requires matching 5 from 69 and 1 from 26.

o The Lotto lottery requires matching 6 from 59.

The subroutine example on the following page, calculates the Factorial of an input integer.

Starting with the code in the example, write a correct program in MIPS - QtSpim assembly language that:

1) Calculates the odds of winning any of the lottery jackpot grand prizes.

2) The calculated value is to be displayed on the QtSpim console screen with an appropriate commentary text. Such as "The odds are 1 in nnnn."

3) The program is to accept as input:

An integer representing the large pool of possible numbers.

A second integer representing the count of numbers to be selected from the large pool.

An integer representing the size of the second pool of numbers.

A fourth integer representing the count of numbers to be selected from the second pool.

4) Test your program by calculating the odds of choosing a set of 2 numbers from a pool of 6 numbers. The value is "1 in 15". Test other combinations.

Note: Because the largest MIPS single precision integer value will not hold the value of more

than 12!, you will need to use some algebra to simplify the calculations. With the

simplifications, all of the math can be done using the integer multiply and divide instructions.

Your program should display a message when it stops.

Use the System Service calls on page A-44 of the textbook for the input and output.

The work products of this assignment are:

1) A copy of the source program text file.

2) Screen captures showing test output results.

# Given n, in register $a0;

# calculates n! and stores the result in register $v0

factrl: sw $ra, 4($sp) # save the return address

sw $a0, 0($sp) # save the current value of n

addi $sp, $sp, -8 # move stack pointer

slti $t0, $a0, 2 # save 1 iteration, n=0 or n=1; n!=1

beq $t0, $zero, L1 # not, calculate n(n-1)!

addi $v0, $zero, 1 # n=1; n!=1

jr $ra # now multiply

L1: addi $a0, $a0, -1 # n = n-1

jal factrl # now (n-1)!

addi $sp, $sp, 8 # reset the stack pointer

lw $a0, 0($sp) # fetch saved (n-1)

lw $ra, 4($sp) # fetch return address

mul $v0, $a0, $v0 # multiply (n)*(n-1)

jr $ra # return value n!

Reference no: EM131135889

Questions Cloud

Prepare a depreciation schedule to be used for tax purposes : Prepare a depreciation schedule to be used for tax purposes for a $110,000 railroad spur (track) using the 200% declining-balance method and a halfyear convention. Ignore any special depreciation allowances.
Show that the differential equation for consumption growth : In the neoclassical growth model with physical and human capital investments described above, the optimal path of physical capital and consumption are given as in the one-sector neoclassical growth model and satisfy the following two differential ..
Plenty of analysts and industry professionals : We are now in 2015 and interest rates are still very low. There are plenty of analysts and industry professionals who argue this has not been the correct approach.
What is the utilization rate of this service system : The Rockwell Electronics Corporation retains a service crew to repair machine breakdowns that occur on an average of 3 per day (approximately Poisson in nature). The crew can service an average of 8 machines per day, with a repair time distribution t..
Calculates the odds of winning any of the lottery jackpot : Calculates the odds of winning any of the lottery jackpot grand prizes. The calculated value is to be displayed on the QtSpim console screen with an appropriate commentary text. Such as "The odds are 1 in nnnn."
Describe the webvan business model : Describe the Webvan business model and then analyze it using the value chain and competitive forces models. - What were the assumptions that drove this business model?
What is the duration of the bond : You purchase a $100 face value U.S 10%, 30-year bond for $110. What is the duration of the bond. what is the current yield of the bond? is it higher or lower than the bond’s ytm? why?. If you sold the bond a the end of 1 year what return would you ha..
Independent standard brownian motions : Let Wt and Bt be independent standard Brownian Motions.Find the characteristic function
Specify the consumer maximization problem in this economy : Characterize the competitive equilibrium, and show that it coincides with the solution to the optimal growth problem.

Reviews

Write a Review

Assembly Language Questions & Answers

  Advantage of assembly and high-level programming languages?

What are the advantages and disadvantage of assembly and high-level programming languages?

  Multiply by using shift and add instructions

How does real time PCR work to quantify the initial amount of the DNA template? How should the method be modified to quantify the initial amount of RNA template extracted from tissue or cells?

  It has three integer parameters, and it is a value-returning

That is, its name is discr , it has three integer parameters, and it is a value-returning procedure.Follow the cdecl protocol and write a short windows32 test-driver program to test the procedure.

  Write a function that accepts a char array

Write a function that accepts a char array, its size and a char to search for in the given array. Use PROTO, INVOKE and LOCAL keywords - Find four different ways to reset eax other than "mov eax, 0"

  Find out the largest number from unordered array

Write assembely language program to find out the largest number from unordered array of 8bit starting at the location 0500h (offset)

  Prompts for an int8 value to inspect and then prints

Write an HLA Assembly program that prompts for an int8 value to inspect and then prints it in binary format.

  Given the memory components of the ias computer

Given the memory components of the IAS computer shown below, show the assembly code language for the program, starting at address 08A.

  Prepare an assembly language program

Prepare an assembly language program that prints your full name on the screen. Use .ASCII pseudo-op to store the characters at the top of your program.

  Compute number of lines of the address bus

Compute number of lines of the address bus connecting the RAM and the CPU - what is the maximum size in Bytes for RAM.

  What is difference between instruction and pseudoinstruction

What is the difference between an instruction and a pseudoinstruction? What is the difference between the instruction location counter and the program counter, if any?

  1 complete the following tables using hexadecimalnbsp

1. complete the following tables using hexadecimalnbsp numbers only

  Create a program that uses ia-32 assembly language

create a program that usesIA-32 assembly language. It converts integers in the array X to its hex string ad save its to array Y in the respictive locations.

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