Develop a calculator in masm, Computer Engineering

Assignment Help:

Assignment:  develop a calculator in MASM.

Text chapters covered:  1 through 4, 5.4, 5.5, 6.3, 7.4

You will develop a "calculator" algorithm in MASM using reverse-polish notation (RPN).  RPN is an extremely useful technique to calculate algebraic expressions.  It is used by many compilers to process algebraic statements.  Your calculator will evaluate RPN expressions using INTEGER values only.

RPN is a postfix expression, meaning that the operation (add, subtract, etc.) follows the variables.  Contrast this to an algebraic expression where the operations are situated between the variables (this is called infix notation).  Here's an example of an RPN expression and its algebraic equivalent:

                        Algebraic equation:     E(A+B)/C-D

                        RPN equivalent:          AB+E*CD-/

To compute an RPN expression is a straightforward process using stacks.  Assume that the RPN expression is always presented as a character string.  The algorithm to do this is shown below.

1. If the character encountered is a variable, push the variable on the stack.

2. If the character encountered is a operator (+,-,*,/), pop the top two variables off the stack, perform the operation on them, then push the result back on the stack.

3. Continue steps 1 and 2 until the string is exhausted.  The last value on the stack is the final result.


Related Discussions:- Develop a calculator in masm

Two services that are used to deal with communication, Explain about the tw...

Explain about the two services that are used to deal with communication. Message Service: Used by the application servers to change short internal messages, all system commu

#web conferencing, data floe diagrams for web conferencing

data floe diagrams for web conferencing

Advantages of mpi, Advantages of MPI: Every process has its own loc...

Advantages of MPI: Every process has its own local variables It can be used on a broader range of problems than OpenMP It runs on either distributed or shared memor

Matlab, Use the colon operation to create a vector x of numbers -10 through...

Use the colon operation to create a vector x of numbers -10 through 10 in steps of 1. Use matrix operations to create a vector y where each element is 5 more than 2 times the corre

Function makestk-predicate function emptystk, 1. Create the following ADTs....

1. Create the following ADTs. (a) Write the constructor function makestk, predicate function emptystk and mutator functions pushstk and popstk: i. makestk returns a new stack

Explain message, Differentiate between message switching, packet switching ...

Differentiate between message switching, packet switching and circuit switching Message switching: Recourse computer sends data to switching office that stores the data in

State the term- combinational circuit, In a pure combinational circuit is ...

In a pure combinational circuit is it necessary to mention all the inputs in sensitivity disk? if yes, why? Yes in a pure combinational circuit is it essential to mention all

Explain bitwise-and operator, Bitwise-AND Operator: & AND-expression : ...

Bitwise-AND Operator: & AND-expression : relational-expression AND-expression & equality-expression The bitwise-AND operator (&) compares each bit of its first operand t

Term memory as used in a computer context initially, Term memory as used in...

Term memory as used in a computer context initially The term memory as used in a computer context initially referred to magnetic core memory devices which were used beginning

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