Article View: pl.comp.lang.asm
Article #2561Re: Konwersja dużych liczb
From: Kamil
Date: Thu, 12 Sep 2013 05:20
Date: Thu, 12 Sep 2013 05:20
58 lines
3324 bytes
3324 bytes
Użytkownik "Bogdan (bogdro)" napisał: >>> A tak mi się coś właśnie wydawało, że te bufory jakichś dziwnych >>> długości były, ale nie przyjrzałem się dość dokładnie. >> >> Jakich dziwnych d ługości? :) 512B. Na wszelki. Jak mnożę dwie liczby >> po 128B to już mam wynik co najmniej 256B. Od przybytku ... > Mówię o równoległym poście, np. > lea esi, wynik > lea edi, arg1 ; przeładowujemy dane z wynik do arg1 > mov ecx, 128 > rep movsd > 128 dwordów to 1kB. Raczej spodziewałbym się mniejszych liczb. 128 dwordów to 512 bajtów. Przeładowuję całe bufory zadeklarowane: wynik db 512 dup(?) arg1 db 512 dup(?) > mnozymy: > mov eax, dword ptr [esi] > mul mnoznik > add dword ptr [edi], eax > adc dword ptr [edi+4], edx > adc dword ptr [edi+8], 0 > adc dword ptr [edi+12], 0 > adc dword ptr [edi+16], 0 > Tu z kolei 5 dwordów (20 bajtów). Takie jakieś nietypowe :) Do procedur zaglądałem w różnym czasie i coś mogło umknąć. Nie wiedziałem jeszcze tego co napisałeś o ilości ADC. Dałem za dużo na wszelki wypadek, ale to chyba niczego nie zmienia w działaniu? > add dword ptr [esi], ebx > adc dword ptr [esi+4], 0 > adc dword ptr [esi+8], 0 > A to mnie chyba najbardziej zdziwiło w porównaniu z poprzednimi W "dodawanie PROC". To już jest poprawione, ADC było za mało o jedną linijkę i były błędy. Teraz jest: add dword ptr [esi], ebx adc dword ptr [esi+4], 0 adc dword ptr [esi+8], 0 adc dword ptr [esi+8], 0 i działa już (chyba) dobrze. Zresztą już o tym wspomniałem. Podziwiam Twoją umijętność analizowania działania programu na podstawie źródła. Ja tego nie potrafię w takim stopniu jak Ty. Ewentualne błędy jeśli się ujawnią w wynikach znajduję przy pomocy debuggera. Pozdrawiam
Technical Details
Message-ID:
<52314f14$0$1454$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!news.glorb.com!news-out.readnews.com!transit3.readnews.com!nx01.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<52239cda$0$1225$65785112@news.neostrada.pl> <522a0fcd$0$1459$65785112@news.neostrada.pl> <522a4a2c$0$1268$65785112@news.neostrada.pl> <522b5a7a$0$1263$65785112@news.neostrada.pl> <522c61b4$0$1470$65785112@news.neostrada.pl> <522dfbe2$0$1267$65785112@news.neostrada.pl> <522ef313$0$1261$65785112@news.neostrada.pl> <522f5be5$0$1450$65785112@news.neostrada.pl> <522f80e7$1$1253$65785112@news.neostrada.pl> <52308ff7$0$1453$65785112@news.neostrada.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin1!goblin.stu.neva.ru!news.glorb.com!news-out.readnews.com!transit3.readnews.com!nx01.iad01.newshosting.com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail From: "Kamil" <nospam@tlen.pl> Newsgroups: pl.comp.lang.asm References: <52239cda$0$1225$65785112@news.neostrada.pl> <522a0fcd$0$1459$65785112@news.neostrada.pl> <522a4a2c$0$1268$65785112@news.neostrada.pl> <522b5a7a$0$1263$65785112@news.neostrada.pl> <522c61b4$0$1470$65785112@news.neostrada.pl> <522dfbe2$0$1267$65785112@news.neostrada.pl> <522ef313$0$1261$65785112@news.neostrada.pl> <522f5be5$0$1450$65785112@news.neostrada.pl> <522f80e7$1$1253$65785112@news.neostrada.pl> <52308ff7$0$1453$65785112@news.neostrada.pl> Subject: Re: Konwersja dużych liczb Date: Thu, 12 Sep 2013 07:20:09 +0200 MIME-Version: 1.0 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Lines: 59 Message-ID: <52314f14$0$1454$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 83.7.25.189 X-Trace: 1378963220 unt-rea-a-01.news.neostrada.pl 1454 83.7.25.189:1727 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit