Liste des Groupes | Revenir à c theory |
On 8/27/2024 2:15 AM, Mikko wrote:You cannot limit unless you limit something.On 2024-08-27 02:33:14 +0000, olcott said:_DDD()
This is intended to be a stand-alone post that does notThat means that HHH is stuck in a recursive simulation and does
reference anything else mentioned in any other posts.
void DDD()
{
HHH(DDD);
return;
}
_DDD()
[00002172] 55 push ebp ; housekeeping
[00002173] 8bec mov ebp,esp ; housekeeping
[00002175] 6872210000 push 00002172 ; push DDD
[0000217a] e853f4ffff call 000015d2 ; call HHH(DDD)
[0000217f] 83c404 add esp,+04
[00002182] 5d pop ebp
[00002183] c3 ret
Size in bytes:(0018) [00002183]
When we assume that:
(a) HHH is an x86 emulator that is in the same memory space as DDD.
(b) HHH emulates DDD according to the semantics of the x86 language.
not return. As x86 does not support an infinite memory space the
excution soon crashes in memory overflow.
Because HHH does not return the execution of DDD and consequently
the emulation of such execution is not continued after the call.
Therefore,
then we can see that DDD emulated by HHH cannot possibly get past
its own machine address 0000217a.
[00002162] 55 push ebp
[00002163] 8bec mov ebp,esp
[00002165] 6862210000 push 00002162
[0000216a] e853f4ffff call 000015c2
[0000216f] 83c404 add esp,+04
[00002172] 5d pop ebp
[00002173] c3 ret
Size in bytes:(0018) [00002173]
*Limited to 20,000,000 total instructions*
Les messages affichés proviennent d'usenet.