Rpn procedure, Computer Engineering

Assignment Help:

Apply this algorithm to your MASM program

1) Declare the following variables in your data segment:

.data

;

; These are the values of the variables

;

Variables               DWORD         17                                            ; A

DWORD         12                                            ; B

DWORD         4                                              ; C

DWORD         10                                            ; D

DWORD         5                                              ; E

;

; This is the expression to evaluate . . .

;

Expression BYTE              "AB-C*DE-/"                                      ; expression to evaluate

2) Create two procedures.  The first procedure should be the RPN calculator and is called from your main program procedure.  The parameters you pass to the RPN procedure from the main program are:

a) The address of the source RPN string.

b) The address of your variables list.

c) The length of our source RPN string.

You may choose any registers to use for passing parameters. The RPN procedure returns the calculated result in the EAX register. The RPN procedure must use the stack as discussed in Chapter 5 to compute the result.

3) The second procedure is called from your RPN procedure.  It determines if the character the RPN procedure is looking at is a variable or operator.  The parameters you pass to the second procedure are:

a) The character being examined.

b) Return code in EAX.  Zero if a variable, one if an operator.

4) Both procedures should be called using the CALL instruction ONLY.

5) When processing the RPN expression, your variable references should map to the variables array.  In other words, your program logic should locate the first DWORD value in the variables list from the letter "A", the second DWORD value from the variable "B", and so on.  You CANNOT hardcode numeric values in the RPN string!

6) Create a second set of variables and an associated RPN string of your choosing.  The second set must consist of AT LEAST four variables.  I can provide examples if you need them.

7) Run your program ONCE with both sets of variables and RPN strings.  Your main program should call the RPN procedure once with the first string, then a second time immediately thereafter with the second string.  Save both results in your data segment.

8) Your main program and all procedures should be in the same .asm file.

9) Submit the following for grading:

a) Your source code (softcopy).

b) A listing of your source code and a memory dump showing the results of both calls to the RPN procedure.


Related Discussions:- Rpn procedure

Define target _blank, TARGET = "_blank" "_blank" opens new document in...

TARGET = "_blank" "_blank" opens new document in a new window. Run the code given in Figure and check how it works. This value doesn't require the use of any frames. "_blank"

How many voice channel have a master group, A Master group consists of? ...

A Master group consists of? A master group have 300 voice channels.

Target _self, TARGET = "_self" "_self" puts the new document in the s...

TARGET = "_self" "_self" puts the new document in the same window and frame as current document. "_self" works the same as if you hadn't used TARGET at all.

Components of information super highway infrastructure, Explain the compone...

Explain the components of Information Super Highway Infrastructure. The Information Superhighway is more than the Internet. It is a sequence of components, having the collectio

Every sheet in a workbook in excel, Is there a way to apply the same format...

Is there a way to apply the same formatting to every  sheet in a workbook in Excel? Ans)  Yes. To do this, you will require to right click on one of the worksheet tabs and th

Is strategy - information system, IS strategy - Information System As ...

IS strategy - Information System As an operations manager when attempting to navigate your organisation through the information landscape and make best use of the available sy

What is cartridge drive, Q. What is Cartridge Drive? Cartridge Drive: ...

Q. What is Cartridge Drive? Cartridge Drive: A cartridge is a protective covering or case which is used to hold a magnetic tape, disk, a printer ribbon or toner. Contents are

What are the characteristics of the e-cash, What are the characteristics of...

What are the characteristics of the E-Cash? These kinds of payments, turning the Internet within a transaction oriented forum, need mediums which are easy and cheap (through a

Write shorts notes on digital signature, Write shorts notes on Digital Si...

Write shorts notes on Digital Signature. This method is used to authenticate the sender of a message. For sign a message, the sender encrypts the message by using a key ident

Mplement a second-order low-pass filter using the finite dif, you will impl...

you will implement a second-order low-pass filter using the finite difference method. The finite difference method is a useful mathematical method that is used to numerically solve

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