Article View: pl.comp.lang.asm
Article #791Re: ecx raz zerowe a raz nie
From: Matuzalem
Date: Fri, 03 Nov 2006 16:15
Date: Fri, 03 Nov 2006 16:15
43 lines
2547 bytes
2547 bytes
Johnny napisał(a): > Mam coś takiego > > title 6_12 > .model tiny > .stack 100h > .386 > .code > org 100h > main proc > (...) > > no i zauważyłem, że uruchamiając program pod debuggerem w ecx "na > starcie" jest 0 (zero), natomiast uruchamiając program "normalnie" w ecx > siedzi 255. Jest jakaś teoria do tego? > > -- > Pozdrawiam > Johnny > > "Zauważyłem że ci wszyscy, którzy opowiadają się za aborcją, zdążyli się > urodzić". R. Reagan Witam dbg zanim załaduje program do pamięci, wszystko skrzętnie czyści - w szczególności rejestry - a ponieważ nie jest to program uruchamiający, może śmiało w ten sposób zrobić - w końcu analizujemy program, a nie jego zewnętrzne środowisko. Gdy system ładuje program, z powodów "pewnego" bezpieczeństwa zeruje tylko to co musi być z zerowane (bo np. nowsza wersja systemu mogła by coś nadpisać w programie ze starszej wersji, więc nie ryzykuje wstecznej kompatybilności), całą resztę np. pamięć zostawia, czy rejestry. Np. MS deklaruje, że po powrocie z wszystkich funkcji API niezmienione pozostaną wartości rejestrów EBX, EBP, ESP, ESI i EDI. Wartość zwrotna (return) funkcji przekazywana jest przez EAX. Nie ma natomiast żadnej gwarancji, że zachowane będą wartości pozostałych rejestrów. Tu sytuacja wygląda podobnie, tyle, że przy "startowaniu" programu. Pozdrawiam
Technical Details
Message-ID:
<1162570523.465802.92270@i42g2000cwa.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!i42g2000cwa.googlegroups.com!not-for-mailReferences:
<eif44u$iak$1@nemesis.news.tpi.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.glorb.com!postnews.google.com!i42g2000cwa.googlegroups.com!not-for-mail From: "Matuzalem" <codemaster_@op.pl> Newsgroups: pl.comp.lang.asm Subject: Re: ecx raz zerowe a raz nie Date: 3 Nov 2006 08:15:23 -0800 Organization: http://groups.google.com Lines: 45 Message-ID: <1162570523.465802.92270@i42g2000cwa.googlegroups.com> References: <eif44u$iak$1@nemesis.news.tpi.pl> NNTP-Posting-Host: 212.244.115.33 Mime-Version: 1.0 X-Trace: posting.google.com 1162570531 19097 127.0.0.1 (3 Nov 2006 16:15:31 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Fri, 3 Nov 2006 16:15:31 +0000 (UTC) In-Reply-To: <eif44u$iak$1@nemesis.news.tpi.pl> User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.1) Gecko/20061010 Firefox/2.0,gzip(gfe),gzip(gfe) Complaints-To: groups-abuse@google.com Injection-Info: i42g2000cwa.googlegroups.com; posting-host=212.244.115.33; posting-account=HFFdEQ0AAACI08bdAnMScVqwVEj2ucOg Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit