Article View: pl.comp.lang.asm
Article #1413Re: Wyświetlanie liczb od 90 do 100
From: Wiktor S.
Date: Sun, 12 Aug 2007 12:49
Date: Sun, 12 Aug 2007 12:49
42 lines
2411 bytes
2411 bytes
Bogdan (bogdro) wrote: > Doleś pisze: >> >> Wybacz, ale po prostu nie do końca jeszcze rozumiem znaczenie [] w >> Asemblerze. Czy to jest jakis odpowiednik operatora wyłuskania z >> C/C++ czy mam to sobie tłumaczyć jako "operator odwołania się do >> elementu zapisanego w TYM adresie" ? > > Tak, nawiasy kwadratowe to dereferencja, jak gwiazdka przy '*ptr' w > C/C++, jesli 'ptr' to wskaźnik. Używasz kompilatora FASM, a w nim > nazwa zmiennej gra rolę wskaźnika, czyli > > mov eax, zmienna == 'eax = &zmienna' w C/C++ > mov eax, [zmienna] == 'eax = *&zmienna' w C/C++ > > Jako że * i & się "znoszą", ostatnie wyrażenie to po prostu > 'eax=zmienna', czyli odczyt zawartości pamięci wskazywanej przez > wskaźnik o nazwie 'zmienna'. > > Co do marnotrawstwa - wyobraź sobie, że używanie rejestrów > 16-bitowych w Linuksie to marnotrawstwo :) Jako że program jest > domyślnie 32-bitowy, używanie rejestrów 16-bitowych powoduje dodanie > po 1 bajcie (66h) do kazdej instrukcji z nich korzystającej. VETO :-) mov eax,10 to B8 0A 00 00 00 mov ax,10 to 66 B8 0A 00 czyli mimo wszystko o bajt mniej ;-) ale mimo wszystko należy używać rejestrów 32-bitowych, chyba że zachodzi uzasadniona okoliczność, by uczynić inaczej. disclaimer: heksy z pamięci, nie bić jeśli nie jest to B8 ;-) -- Azarien
Technical Details
Message-ID:
<f9mvkc$q1q$1@news.onet.pl>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-mailReferences:
<f8upq6$pn3$1@nemesis.news.tpi.pl> <f8v85h$a75$1@inews.gazeta.pl> <f8v9aq$c19$1@atlantis.news.tpi.pl> <f94vu8$4uk$1@inews.gazeta.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: "Wiktor S." <SPAM.wswiktor@poczta.SPAM.fm.SPAM> Newsgroups: pl.comp.lang.asm Subject: Re: Wyświetlanie liczb od 90 do 100 Date: Sun, 12 Aug 2007 14:49:20 +0200 Organization: Onet.pl Lines: 43 Message-ID: <f9mvkc$q1q$1@news.onet.pl> References: <f8upq6$pn3$1@nemesis.news.tpi.pl> <f8v85h$a75$1@inews.gazeta.pl> <f8v9aq$c19$1@atlantis.news.tpi.pl> <f94vu8$4uk$1@inews.gazeta.pl> NNTP-Posting-Host: 76.174.wmc.com.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1186922956 26682 87.250.174.76 (12 Aug 2007 12:49:16 GMT) X-Complaints-To: usenet@news.onet.pl NNTP-Posting-Date: Sun, 12 Aug 2007 12:49:16 +0000 (UTC) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 X-Sender: 63e3folRCjcGWUjNfLSN0w== X-Newsreader: Microsoft Outlook Express 6.00.2900.3138 X-Priority: 3 X-MSMail-Priority: Normal Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit