"As we all know, stack address are higher than heap addresses in Process Address Space."
Your assumption here is false. The stack and heap are both allocated from the process's virtual address space and they may, for all intents and purposes, be located practically anywhere in that address space.