Допустим, у нас есть функция, вызывающая сама себя несколько тысяч раз. Согласно написанному здесь http://mech.math.msu.su/~zubr/func.html при вызове функции, указатель на вершину стека растёт на 4, а, так как указатель у нас находится в регистре SP, то глубина рекурсии будет ограничена размером этого регистра, т.е. если он 32 бита, то функция может вызвать сама себя чуть более 16ти тысяч раз, так? Есть ли возможность на языке C обойти это ограничение, или в данном случае оно серьёзно завязано на конкретный процессор?
Или я вообще сморозил несусветную чушь, так как в регистре SP просто указатель на вершину стека, т.е. адрес в памяти?
P.S. Вопрос для общего развития.
P.P.S А как в интерпретируемых языках, в той же Java?