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

  Create a assembly language subroutine

Create a assembly language subroutine MULSUM that takes an array named A containing n bytes of positive numbers, and fills two arrays, array B containing n words and array C containing n long words

  Write a function in linux assembly

Write a function in Linux assembly

  Analog measurements

Prepare an assembly program for the correctly measures the wind direction

  Design a simple digital clock

Design a simple digital clock

  Write an assembly program

Prepare an Assembly program that reads in a number of cents.

  Write an assembly language program

Write an assembly language program for encrypting alphabates of a string

  Greatest common divisor of integers-masm assembly language

Must be done in MASM assembly language: Greatest common divisor of two integers is largest integer which will evenly divide both integers. GCD algorithm involves integer division in a loop.

  Write assembly program-find right admission price to movie

Write the Assembly program to find correct admission price to movie. Price of admission to a movie is $7 for kids (under 12) and $9 for adults.

  Create simple 8-bit alu using add-subtract-shift functions

Create a simple 8-bit ALU. Requirements:The eight functions that you will implement are: add, subtract, and, or, shift left logical, less than, shift right logical.

  Write assembly program print binary representation-integers

Write the assembly program called hw6_ex1, stored in file hw6_ex1.asm. This program must prompt user to enter signed 32-bit integer. Program must print out binary representation of the integer.

  Allot op-codes and add microcode to microprogram

Allot op-codes and add microcode to microprogram of Mic-1 to implement following instructions which are then included with IJVM instruction set.

  Write mips assembly program to read two non-negative numbers

Write MIPS assembly program to repeatedly read two non-negative integers and print integer product and quotient without using multiplication and division instructions.

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