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

Write unix commands, For the following, cmd1 and cmd2 are arbitrary UNIX co...

For the following, cmd1 and cmd2 are arbitrary UNIX commands, and file1 and file2 are files owned by you. Write UNIX (bash) commands to: (a) Run cmd1 and append its output to f

Explain the data dependency, Data Dependency It indicates to the situ...

Data Dependency It indicates to the situation in which two or more instructions share same data. The instructions in a program are able to be arranged based on relationship o

Project, write a programme to simulate a train station to automate

write a programme to simulate a train station to automate

C++, a program to find the area under the curve y = f(x) between x = a and ...

a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can be foun

Evaluate the damping coefficient, A certain car has suspension modes which ...

A certain car has suspension modes which are uncoupled front to back.  When a person with a mass of 60 kg sits in the rear of a car, in the centre of the seat which is directly ove

Expand cpi-c, Expand CPI-C. CPI-C= Common Program Interface Communica...

Expand CPI-C. CPI-C= Common Program Interface Communication.

Minimis logic function using K-map, Minimise the logic function F (A, B, C,...

Minimise the logic function F (A, B, C, D) = Π M (1, 2, 3, 8, 9, 10, 11,14) ⋅ d (7, 15) Use Karnaugh map.   Ans. Given function F=∏M(1,2,3,8,9,10,11,14).d(7, 15) F'=B'D+B'C+AC+AB'

Selecting integerated learning experiences, Q. Selecting integerated learni...

Q. Selecting integerated learning experiences? It is important that we select appropriate experiences for children, more so those that are from the child's world and emerge fro

Qwerty-based keyboards, QWERTY-based keyboards In addition the standard...

QWERTY-based keyboards In addition the standard alphabet keys having QWERTY arrangement, a computer keyboard also comprises the control (alt, Del, Ctrl etc. keys) and function

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