I printed such a code to see max value of 128 bits long double variable:
long double num = numeric_limits<long double>::max();
printf("%Lf", num);
and got output of more than 4 thousands digits which is can not be stored in 128 bits. Then what is stored in long double variable? In my case it is equal to 1.18973e+4932. I guess long double stores 118973, 4932, and then multiplying occurs, but in what rules and where the code fore this routine is kept? How essentially number of 4 thousands digits appears?