🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.asm
Article #541

Re: Neg i carry

#541
From: Matuzalem
Date: Thu, 24 Aug 2006 12:18
67 lines
2912 bytes
Matuzalem napisal(a):
> Johnny napisal(a):
> > mov ax,80h
> > neg ax
> >
> > Dlaczego druga linijka ustawia znacznik carry? Przeciez neg to nic
> > innego jak not ax i add ax,1h. Jesli w ten sposób zapisze ta linijke to
> > carry nie jest ustawiane.
> >
> > --
> > Johnny
>
> Polecenie NEG odwraca liczby poprzez konwersje liczby na jej
> uzupelnienie dwójkowe.
> Dozwolone sa:
>
> NEG reg
> NEG mem
>
> Jest to odwrócenie wszystkich bitów w operandzie docelowym i dodanie
> 1.
> I teraz dlaczego ustawia carry?
> Operacja NEG ma wplyw na znaczniki:
>   - overflow,
>   - sign,
>   - zero,
>   - parity,
>   - CARRY,
>   - auxiliary carry
>
> A kiedy jest ustawiane carry?
> Jesli wynik operacjcji arytmetycznej bez znaku jest zbyt duzy i nie
> miesci sie w miejscu docelowym.
>
> Czyli czemu jest ustawiny carry?
> Bo wynik operacji nie miesci sie w operandzie docelowym (nie chodzi
> tu tylko o ax)
> NEG jest to odwrócenie wszystkich bitów:
>
> czyli np. 20d == 14h == 10100b
>
> liczby jest nieskonczenie wiele, wiec tak naprawde 10100b mozna np.
> zapisac:
>
> 0000 10100b lub 0000 0000 10100b itd.
>
> dalej najpierw not:
>
> not 10100b czyli 1111 1111 1111 1111 1111 1111 1110 1011b (odwrócenie
> wszystkich bitów, zauwaz ze to jest "cale" eax, a gdyby to bylo
> rax to równiez zostalo by zapelnione w "calosci", bo liczb jest
> nieskonczenie wiele).
>
> Juz w tym momencie carry jest ustawione.
>
> No i teraz dodajemy 1:
> add 1 czyli 1111 1111 1111 1111 1111 1111 1110 1100b
>
>

Jeszcze moze to:
http://pdos.csail.mit.edu/6.828/2005/readings/i386/NEG.htm

> Mam nadzieje, ze nie namieszalem zbytnio :]

 Pozdrawiam
Technical Details
Message-ID: <1156421922.322892.273020@h48g2000cwc.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!news.germany.com!postnews.google.com!h48g2000cwc.googlegroups.com!not-for-mail
References: <eck20j$ic8$1@nemesis.news.tpi.pl> <1156420928.021909.295430@74g2000cwt.googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.nask.pl!news.nask.org.pl!news.germany.com!postnews.google.com!h48g2000cwc.googlegroups.com!not-for-mail
From: "Matuzalem" <codemaster_@op.pl>
Newsgroups: pl.comp.lang.asm
Subject: Re: Neg i carry
Date: 24 Aug 2006 05:18:42 -0700
Organization: http://groups.google.com
Lines: 69
Message-ID: <1156421922.322892.273020@h48g2000cwc.googlegroups.com>
References: <eck20j$ic8$1@nemesis.news.tpi.pl>   <1156420928.021909.295430@74g2000cwt.googlegroups.com>
NNTP-Posting-Host: 212.244.115.33
Mime-Version: 1.0
X-Trace: posting.google.com 1156421927 11849 127.0.0.1 (24 Aug 2006 12:18:47 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Thu, 24 Aug 2006 12:18:47 +0000 (UTC)
In-Reply-To: <1156420928.021909.295430@74g2000cwt.googlegroups.com>
User-Agent: G2/0.2
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6,gzip(gfe),gzip(gfe)
Complaints-To: groups-abuse@google.com
Injection-Info: h48g2000cwc.googlegroups.com; posting-host=212.244.115.33;   posting-account=HFFdEQ0AAACI08bdAnMScVqwVEj2ucOg
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit