Deutsch English Français Italiano |
<vq193s$njjd$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Mikko <mikko.levanto@iki.fi> Newsgroups: comp.theory Subject: Re: DD emulated by HHH cannot possibly terminate normally --- x86 code Date: Sun, 2 Mar 2025 11:41:16 +0200 Organization: - Lines: 71 Message-ID: <vq193s$njjd$1@dont-email.me> References: <vptlfu$3st19$9@dont-email.me> <vpug3h$50td$1@dont-email.me> <vq06al$eljf$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sun, 02 Mar 2025 10:41:17 +0100 (CET) Injection-Info: dont-email.me; posting-host="a72b0c126c3da1d8eeb41eb14669e115"; logging-data="773741"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19BoyTwfTBrYVbnmM1n5Sq0" User-Agent: Unison/2.2 Cancel-Lock: sha1:PVUQWr5wE5U7f+gxQMHGvYu0bgI= Bytes: 3787 On 2025-03-01 23:47:30 +0000, olcott said: > On 3/1/2025 2:22 AM, Mikko wrote: >> On 2025-03-01 00:47:58 +0000, olcott said: >> >>> _DD() >>> [00002133] 55 push ebp ; housekeeping >>> [00002134] 8bec mov ebp,esp ; housekeeping >>> [00002136] 51 push ecx ; make space for local >>> [00002137] 6833210000 push 00002133 ; push DD >>> [0000213c] e882f4ffff call 000015c3 ; call HHH(DD) >>> [00002141] 83c404 add esp,+04 >>> [00002144] 8945fc mov [ebp-04],eax >>> [00002147] 837dfc00 cmp dword [ebp-04],+00 >>> [0000214b] 7402 jz 0000214f >>> [0000214d] ebfe jmp 0000214d >>> [0000214f] 8b45fc mov eax,[ebp-04] >>> [00002152] 8be5 mov esp,ebp >>> [00002154] 5d pop ebp >>> [00002155] c3 ret >>> Size in bytes:(0035) [00002155] >>> >>> When we hypothesize that the code at machine address >>> 0000213c is an x86 emulator then we know that DD >>> remains stuck in recursive emulation and cannot possibly >>> reach its own "ret" instruction and terminate normally. >> >> The emulator itself is stuck and cannot return normally but it doesn't >> know it cannot return normally. At some point it runs out of memory >> and terminates normally or abnormally. >> > > Yes you are correct about this sub-step of two steps. > >>> When we add the additional complexity that HHH also >>> aborts this sequence at some point then every level >>> of recursive emulation immediately stops. This does >>> not enable any DD to ever reach its "ret" instruction. >> >> When we add an additional complexity we must note that there are other >> additional complexities that could be added instead. >> > > Sure we could carefully examine every detail about the price > of tea in China. And you need to unless you can prove your claim otherwise. Apparently you can't as you would done so if you could. > When we are answering the question that seems impossible for > anyone here to pay attention to even when repeated hundreds of times: > > Can the above DD correctly emulated by HHH possibly > reach its own "ret" instruction and terminate normally? Already answered. > The answer is dead obviously "no" for everyone that is: > (a) Technically competent > and > (b) Not deliberately deceptive. Only someone technically incompetent or deliberately deceptive believes that. If DD correctly emulated by HHH is the DD of OP then it may reach its own "ret" isntruction or fail to reach depending on things OP did not specify. If DD correctly emulated by HHH is not the DD of OP then nothing is specified, so both reaching and not reaching of "ret" are possible in this case, too. -- Mikko