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

Explain the meaning of listen socket primitive, Explain the meaning of L...

Explain the meaning of LISTEN socket primitive The listen Primitive: After identifying a protocol port a server should instruct the operating system to place a socket

Generalization-specialization(DBMS), Design a generalization-specialization...

Design a generalization-specialization hierarchy for a motor vehicle sales company. The company sells motorcyles,passenger cars,vans,and buses.justify your placement of attributes

Give an account of modems used in data transfer, Give an account of modems ...

Give an account of modems used in data transfer. Modem: Modems are usually provided through network operators (Department of Telecommunication in India) or through vendors wh

How deep does fifo require to be stop underflow or overflow, Given the subs...

Given the subsequent FIFO and rules, how deep does the FIFO require to be to stop underflow or overflow? RULES: a. frequency(clk_A) = frequency(clk_B) / 4 b. per

Illustrate characteristic tables of flip-flops, Q. Illustrate Characteristi...

Q. Illustrate Characteristic tables of flip-flops? Excitation Tables Characteristic tables of flip-flops present the subsequent state when inputs and present state are kno

Array user interface, You were offered bonus marks for separating the user ...

You were offered bonus marks for separating the user interface code from the main logic of your program. This design choice makes it very easy to replace the user interface without

Matlab, 33.A juice company manufactures one-gallon bottles of three types o...

33.A juice company manufactures one-gallon bottles of three types of juice blends using orange, pineapple, and mango juice. The blends have the following compositions: 1 gallon or

Determine the basic machine language instructions, Determine the basic Mach...

Determine the basic Machine language instructions Machine language instructions and data are in terms of 0s and 1s and are stored in the memory. It isn't possible to distinguis

What are the different kinds of lock modes, What are the different kinds of...

What are the different kinds of lock modes? There are three types of lock modes:- Shared lock Exclusive lock. Extended exclusive list.

The extra key inserted at the end of the array, The extra key inserted at t...

The extra key inserted at the end of the array is called a Sentinel is the extra key inserted at the end of the array

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