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

Select statements linked to a logical database, One cannot use SELECT state...

One cannot use SELECT statements in a report program linked to a Logical Database   False. You can use th SELECT statements.

What do you mean by segment numbers, Q. What do you mean by Segment numbers...

Q. What do you mean by Segment numbers? There is a good reason for not leaving determination of segment numbers up to assembler. It permits programs written in 8086 assembly

Explain efficiency performance and issues in pipelining, Efficiency The...

Efficiency The effectiveness of pipeline can be measured the same as the ratio of busy time span to total time span counting the idle time. Let c be clock period of a pipeline

Develop a menu driven program, Q.  Develop a Menu driven program with follo...

Q.  Develop a Menu driven program with following menu: a.  Binary to Decimal b.  Binary to Octal c.  Binary to Hexadecimal d.  Exit (Put proper validation for input

Asembly language programming, Ask question #Minimum Write a program to mask...

Ask question #Minimum Write a program to mask bits D3D2D1D0 and to set bits D5D4 and to invert bits D7D6 of the AX register. 100 words accepted#

Why some languages are not decidable, Why some languages are not decidable ...

Why some languages are not decidable or even Turing - recognizable?  The  reason  that  there  are  uncountable  many  languages  yet  only  countably many  Turing  machines.

Explain assembly language, Explain Assembly Language This is a family o...

Explain Assembly Language This is a family of low-level language for programming computers, microprocessors, microcontrollers etc. They implement a symbolic sign of the numeric

Two "next screen "attributes, Of the two "next screen "attributes the attri...

Of the two "next screen "attributes the attributes that has more priority is?? Dynamic.

Explain the working of a 1-to-16 Demultiplexer, Using a suitable logic diag...

Using a suitable logic diagram explain the working of a 1-to-16 de multiplexer. Ans. 1-to-16 Demultiplexer Working: A demultiplexer obtains in data from one line and directs this

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