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

How do you populate data into a multiple line field, How do you populate da...

How do you populate data into a multiple line field? To populate data into a multiple line field, an index is added to the field name to show which line is to be populated by t

OS, why we say OS is a resource allocator and control program

why we say OS is a resource allocator and control program

What are the limitations of traditional payment instruments, What are the l...

What are the limitations of traditional payment instruments? The limitations of traditional payment system are that they take a lot of time.  These systems needs manual work to

Which technique allows executing a program not in memory, A set of techniqu...

A set of techniques that allow executing a program which is not entirely in memory is called ? Ans. virtual memory which allows executing a program that is not entirely in me

Asp.net, in asp project is i have to crate database every time when i move ...

in asp project is i have to crate database every time when i move my project on different server

Define bandwidth, Define Bandwidth? When transferring blocks of data, i...

Define Bandwidth? When transferring blocks of data, it is of interest to know how much time is required to transfer an entire block, as blocks can be variable in size it is use

Discuss different mode of centralized stored program control, Explain SPC. ...

Explain SPC. Also discuss the different modes of Centralized SPC In stored program control systems, set of instructions or a program to the computer is stored into its memory a

Java Applet, Simple codes for robot using applet

Simple codes for robot using applet

Drawback of indirect addressing, Q. Drawback of indirect addressing? • ...

Q. Drawback of indirect addressing? • Drawback of this scheme is that it needs two memory references to fetch actual operand. First memory reference is to fetch the actual addr

Representation scheme in artificial intelligence, Representation scheme in ...

Representation scheme in artificial intelligence: It is not hard to see why logic has been popular representation scheme in AI: In this way, It is easy to represent knowl

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