🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Debugger

#2492
From: Remek
Date: Mon, 04 Jul 2011 13:16
48 lines
2794 bytes
Użytkownik "Michoo" napisał:

> > Jak
> > instrukcje procesora implementować w procedurze i po co?

> Bo na liczbie długości podwojonego słowa procesora ROR na składowych
> nie zrobi tego o co chodzi.

W związku z tym stosuje się procedurę wykorzystującą właściwe instrukcje.
Czy to oznacza implementację ROL???

> > Tym bardziej jeśli
> > chodzi o ROL to w procedurach wielokrotnej precyzji ma raczej małe
> > zastosowanie.

> No a jak ktoś jednak potrzebuje taką funkcjonalność?

Jak potrzebuje to zastosuje. Mógłbyś rzucić jakiś przykład operacji
wielokrotnej precyzji wykorzystującej ROL?

A co do porównywania dużych liczb. Procedura podana przez Bogdana nie
sprawdza się w mojej implementacji. Czego nie rozumiem? Pokazuję źródło.
Jest to próba sprawdzenia, czy wynik mnożenia jest większy od liczby na
wejściu.

 mov eax, dword ptr [wynikmn+8]
 cmp eax, dword ptr [wejscie+8]
 ja  obl_reszt

 mov eax, dword ptr [wynikmn+4]
 cmp eax, dword ptr [wejscie+4]
 ja  obl_reszt

 mov eax, dword ptr [wynikmn]
 cmp eax, dword ptr [wejscie]
 ja  obl_reszt

I jak to działa. Jeśli pierwsze sprawdzenie daje wynik negatywny to ja nie
jest wykonany. Kolejne sprawdzenie daje wynik pozytywny i ja jest wykonany.
I to jest błąd bo:

wejście = 8A9F 0F8C 33C4
wynikmn = 0A9F 2F8C 33C4

Podzieliłem to na dwordy, aby było lepiej widoczne. Liczby są przypadkowe,
ale obrazują problem. jak zrobić, aby było dobrze?

Remek
Technical Details
Message-ID: <iusegi$o55$1@inews.gazeta.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!newsfeed.pionier.net.pl!news.gazeta.pl!not-for-mail
References: <iud0k4$1s0$1@inews.gazeta.pl> <iudn6s$6a7$1@news.onet.pl> <iue522$lju$1@inews.gazeta.pl> <iug9cm$e44$1@news.onet.pl> <iuhs16$od3$1@inews.gazeta.pl> <iui456$obd$1@news.onet.pl> <iui4i7$pma$1@inews.gazeta.pl> <iuia8j$fdr$1@inews.gazeta.pl> <iuk13l$6o$1@inews.gazeta.pl> <iukuh7$9m1$1@inews.gazeta.pl> <iupscc$sf9$1@inews.gazeta.pl> <ius0iu$btg$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!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!newsfeed.pionier.net.pl!news.gazeta.pl!not-for-mail
From: "Remek" <dupa@gmail.com>
Newsgroups: pl.comp.lang.asm
Subject: Re: Debugger
Date: Mon, 4 Jul 2011 15:16:35 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 49
Message-ID: <iusegi$o55$1@inews.gazeta.pl>
References: <iud0k4$1s0$1@inews.gazeta.pl> <iudn6s$6a7$1@news.onet.pl> <iue522$lju$1@inews.gazeta.pl> <iug9cm$e44$1@news.onet.pl> <iuhs16$od3$1@inews.gazeta.pl> <iui456$obd$1@news.onet.pl> <iui4i7$pma$1@inews.gazeta.pl> <iuia8j$fdr$1@inews.gazeta.pl> <iuk13l$6o$1@inews.gazeta.pl> <iukuh7$9m1$1@inews.gazeta.pl> <iupscc$sf9$1@inews.gazeta.pl> <ius0iu$btg$1@news.onet.pl>
NNTP-Posting-Host: acpg4.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
X-Trace: inews.gazeta.pl 1309785427 24741 83.10.212.4 (4 Jul 2011 13:17:07 GMT)
X-Complaints-To: usenet@agora.pl
NNTP-Posting-Date: Mon, 4 Jul 2011 13:17:07 +0000 (UTC)
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Priority: 3
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-User: remeka
X-MSMail-Priority: Normal
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit