Sujet : Re: People are still trying to get away with disagreeing with the semantics of the x86 language
De : polcott333 (at) *nospam* gmail.com (olcott)
Groupes : comp.theoryDate : 04. Jul 2024, 14:41:22
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v668q2$2pc84$2@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
User-Agent : Mozilla Thunderbird
On 7/4/2024 8:26 AM, joes wrote:
Am Thu, 04 Jul 2024 07:46:15 -0500 schrieb olcott:
On 7/4/2024 5:15 AM, joes wrote:
Am Wed, 03 Jul 2024 09:45:57 -0500 schrieb olcott:
On 7/3/2024 9:39 AM, joes wrote:
Am Wed, 03 Jul 2024 08:21:40 -0500 schrieb olcott:
On 7/3/2024 3:26 AM, Fred. Zwarts wrote:
Op 02.jul.2024 om 21:48 schreef olcott:
On 7/2/2024 2:22 PM, Fred. Zwarts wrote:
Op 02.jul.2024 om 20:43 schreef olcott:
On 7/2/2024 1:59 AM, Mikko wrote:
On 2024-07-01 12:44:57 +0000, olcott said:
On 7/1/2024 1:05 AM, Mikko wrote:
On 2024-06-30 17:18:09 +0000, olcott said:
>
Richard just said that he affirms that when DDD correctly
simulated by HHH calls HHH(DDD) that this call returns even
though the semantics of the x86 language disagrees.
Which semantics?
I repeat.
What x86 semantics say that HHH can’t return?
DDD correctly emulated by HHH calls an emulated HHH(DDD) that
emulates DDD that calls an emulated HHH(DDD)
in a cycle that cannot end unless aborted.
But HHH aborts, so the cycle does end.
As long as it is impossible for DDD correctly emulated by HHH to reach
its own ret instruction then DDD never halts even when its stops
running because its emulation was aborted.
HHH halts by definition. Why can’t DDD?
By definition DDD calls its simulator.
Yes, and nothing else. So when HHH returns, so does DDD.
You simply lack sufficient technical competence of these things
*Machine address 00002174 of DDD is never reached*
I am using an x86 emulator with decades of development effort.
_DDD()
[00002163] 55 push ebp
[00002164] 8bec mov ebp,esp
[00002166] 6863210000 push 00002163 ; push DDD
[0000216b] e853f4ffff call 000015c3 ; call HHH(DDD)
[00002170] 83c404 add esp,+04
[00002173] 5d pop ebp
[00002174] c3 ret
Size in bytes:(0018) [00002174]
_main()
[00002183] 55 push ebp
[00002184] 8bec mov ebp,esp
[00002186] 6863210000 push 00002163
[0000218b] e833f4ffff call 000015c3
[00002190] 83c404 add esp,+04
[00002193] 33c0 xor eax,eax
[00002195] 5d pop ebp
[00002196] c3 ret
Size in bytes:(0020) [00002196]
machine stack stack machine assembly
address address data code language
======== ======== ======== ========= =============
[00002183][001037dd][00000000] 55 push ebp
[00002184][001037dd][00000000] 8bec mov ebp,esp
[00002186][001037d9][00002163] 6863210000 push 00002163
[0000218b][001037d5][00002190] e833f4ffff call 000015c3
New slave_stack at:103881 ; *create a different process context*
Begin Local Halt Decider Simulation Execution Trace Stored at:113889
[00002163][00113879][0011387d] 55 push ebp
[00002164][00113879][0011387d] 8bec mov ebp,esp
[00002166][00113875][00002163] 6863210000 push 00002163 ; push DDD
[0000216b][00113871][00002170] e853f4ffff call 000015c3 ; call HHH(DDD)
New slave_stack at:14e2a9 ; *create a different process context*
[00002163][0015e2a1][0015e2a5] 55 push ebp
[00002164][0015e2a1][0015e2a5] 8bec mov ebp,esp
[00002166][0015e29d][00002163] 6863210000 push 00002163 ; push DDD
[0000216b][0015e299][00002170] e853f4ffff call 000015c3 ; call HHH(DDD)
Local Halt Decider: Infinite Recursion Detected Simulation Stopped
[00002190][001037dd][00000000] 83c404 add esp,+04
[00002193][001037dd][00000000] 33c0 xor eax,eax
[00002195][001037e1][00000018] 5d pop ebp
[00002196][001037e5][00000000] c3 ret
Number of Instructions Executed(10066) == 150 Pages
-- Copyright 2024 Olcott "Talent hits a target no one else can hit; Geniushits a target no one else can see." Arthur Schopenhauer