how can this code be written

hey guys
i have this question that i am finding difficulity in help will be appriciated
Modify the Wombat 1 computer to Wombat 2 by adding Stack. Stack is a memory which
has only one opening where the values are pushed into or popped from stack. The values
pushed into the stack will settle down on top of other value. The last value pushed into the
stack will be the first one to come out and similarly the first value pushed into the stack will
be the last one to come out of the stack. The stack has two operations: which are Push
and Pop. Add a stack, a new stack pointer register, push and pop machine instructions to
make Wombat 2 computer. Please note that the push operation will push a value from the
main memory to the stack while the pop operation will pop a value from the stack to the
main memory.
Also, add call and return machine instructions. call instruction will allow the
subprogram to be called (which means start executing the code for the subprogram)
whereas return instruction will allow the subprogram to end and return to main program
(start executing the main program from where function call was made).
Write a complete Wombat 2 assembly language program. The main program should take a
positive number as input and call first subprogram to calculate the radix 4 representation
for that number and the second program will display the result. The radix 4 calculation
should use stack.