🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Kolejna prosta zagadka

#2153
From: Wojciech Muła
Date: Wed, 24 Mar 2010 09:35
37 lines
1796 bytes
Andrzej Grażyński <grazynsk@petex.com.pl> wrote:

> >> W EAX jest liczba ze znakiem, należy umieścić w EAX wartość funkcji 
> >> signum(EAX), czyli
> >>
> >> 1 gdy w EAX jest liczba dodatnia (czyli bit znaku = 0 i nie wszystkie 
> >> bity są zerowe)
> >>
> >> 0 gdy w jest 0 (wszystkie bity są zerowe)
> >>
> >> -1 gdy w EAX jest liczba ujemna (bit znaku = 1)
> > 
> > Moja wersja ma 6 instrukcji.
> > Pokażcie swoje :)
> 
> CDQ
> NEG EAX
> RCL EDX,1
> MOV EAX,EDX

Wow, jestem pod wrażeniem. :) Naprawdę sprytne.
Moje podejście w ogóle nie wymaga dostępu do znacznika
przeniesienia i wykorzystuje jedynie proste instrukcje.

	mov edx, eax
	sar eax, 32
	
	and edx, 0x7ffffffff
	add edx, 0x7ffffffff
	shr edx, 31

	or  eax, edx

w.

-- 
Mamy oswojoną sarnę i w związku z tym projektuję, by dorobić do niej kłódkę.
Technical Details
Message-ID: <20100324103535.3bd86427.wojciech_mula@poczta.null.onet.pl.invalid>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
References: <ho88he$kjj$1@news.onet.pl> <20100323120156.49223bbd.wojciech_mula@poczta.null.onet.pl.invalid> <hob84e$ieq$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail
From: Wojciech Muła
 <wojciech_mula@poczta.null.onet.pl.invalid>
Newsgroups: pl.comp.lang.asm
Subject: Re: Kolejna prosta zagadka
Date: Wed, 24 Mar 2010 10:35:35 +0100
Organization: http://onet.pl
Lines: 40
Message-ID: <20100324103535.3bd86427.wojciech_mula@poczta.null.onet.pl.invalid>
References: <ho88he$kjj$1@news.onet.pl> <20100323120156.49223bbd.wojciech_mula@poczta.null.onet.pl.invalid> <hob84e$ieq$1@news.onet.pl>
NNTP-Posting-Host: public-gprs81474.centertel.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1269423345 21183 91.94.191.194 (24 Mar 2010 09:35:45 GMT)
X-Complaints-To: niusy@onet.pl
NNTP-Posting-Date: Wed, 24 Mar 2010 09:35:45 +0000 (UTC)
X-Newsreader: Sylpheed 2.5.0 (GTK+ 2.10.14; i686-pc-mingw32)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit