Question: PLEASE USE SKELETON BELOW (Fill in solution into Your Solution Here): .global toInFix .data // declare any global variables here .text toInFix: mov
PLEASE USE SKELETON BELOW (Fill in solution into "Your Solution Here"):
.global toInFix .data // declare any global variables here .text toInFix: mov r12,r13 // save stack pointer into register r12 sub sp,#32 // reserve 32 bytes of space for local variables push {lr} // push link register onto stack -- make sure you pop it out before you return // Your solution here pop {lr} // pop link register from stack mov sp,r12 // restore the stack pointer -- Please note stack pointer should be equal to the // value it had when you entered the function . mov pc,lr // return from the function by copying link register into program counter .global toPostFix .data // declare any global variables here .text toPostFix: mov r12,r13 // save stack pointer into register r12 sub sp,#32 // reserve 32 bytes of space for local variables push {lr} // push link register onto stack -- make sure you pop it out before you return // Your solution here pop {lr} // pop link register from stack mov sp,r12 // restore the stack pointer -- Please note stack pointer should be equal to the // value it had when you entered the function . mov pc,lr // return from the function by copying link register into program counter
In Reverse Polish(postfix) notation the operators follow their operands; for instance, to add three and four one would write "3 4 +" rather than "3 +4". If there are multiple operations, the operator is given immediately after its second operand; so the expression written "3 - 4 + 5" in conventional infix notation would be written "3 4-5 +" in RPN: first subtract 4 from 3, then add 5 to that. An advantage of RPN is that it obviates the need for parentheses that are required by infix. While "3-4+ 5" can also be written "(3-4) + 5", that means something quite different from "3 - (4 + 5)", and only the parentheses disambiguate the two meanings. In postfix, the latter would be written "3 4 5+-", which unambiguously means "3 (45+) -". Interpreters of Reverse Polish notation are stack-based; that is, operands are pushed onto a stack, and when an operation is performed, its operands are popped from a stack and its result pushed back on. Stacks, and therefore RPN, have the advantage of being easy to implement and very fast.
Step by Step Solution
There are 3 Steps involved in it
1 postfix to infix in assembly language program converts an infix expression to a postfix expression with the help of stacks We have defined 4 functions in this program push to insert element to stack ... View full answer
Get step-by-step solutions from verified subject matter experts
