In c8051f120 controller, i use merge sorting technique of one of my application in a project. but problem is local variable acting as global variables within a function(auto keyword). following is a example of merge sorting. divide(int left,int right) { int mid; if(left<right) { mid=(left+right)/2; divide(left,mid); divide(mid+1,right); } }
Which is why, "The 8051 is bad at recursion"
http://www.keil.com/support/man/docs/c51/c51_le_reentrantfuncs.htm
I rather heavily doubt the correctness of that assessment.
Oh dear.