Article View: pl.comp.lang.asm
Article #2273Re: Tablica
From: Michoo
Date: Thu, 17 Jun 2010 09:05
Date: Thu, 17 Jun 2010 09:05
56 lines
3274 bytes
3274 bytes
przemo12146 pisze: > Cześć, > Jestem początkujący mam kilka pytań do mojego kodu: Co to jest - TASM, czy jakiś inny staroć? > > 1.Dlaczego jak wpisuje do rejestru bx+1 lub bx+2 aż do bx+4 zmienną a > lub b pokazuje mi śmieci zamiast tego co pod nią się znajduje, zacząć > mogę dopiero od bx+5 tak jak wyżej ? Nie miałem kontaktu z asm pod dosem dobre 5 lat, ale stara ściąga mówi, że to, że to działa to jakiś cud - używasz 09h, które wypisuje string, a ładujesz do rejestru dx znak, a nie wskaźnik (jakbyś chciał użyć 02h) > > 2.Dlaczego pomiędzy wpisywaniem zmiennych do tablicy pod adresy bx+5 > czy tez bx+7 itp. muszą być od siebie w odstepie 2 bo inaczej zamiast > zmiennych na pulpicie widzie śmieci ? ax, bx mają rozmiar słowa, bajt ma rozmiar bajtu > > 3.Litera 'a' w kodzie ascii ma wartość szesnastkowo 61 binarnie > 1100001 czyli jest 7 bitowa pomijając uzupelnienie liczby do 8 bitów > dlaczego znajduje sie w odległości 2 bajtów w tablicy skoro tablica > jest zainicjonowana na 10 bajtów rownych 0 ? Co masz na myśli? > > 4.Wpisując do tablicy np: 255 bajtowej, zmienną składającą sie z 8 > bitów chcąc ją wpisać pod 10 bajt użyjemy operacji np: [bx+9] gdzie do > rejestru bx zostala przypisana tablica ale czy można zapisać to w > sposób [bx-245] przecież zadeklarowana tablica to etykieta obliczana > przez linker Z C ci się pomieszało - linker policzy [tablica+10], a nie [bx+10], bo nie zajmuje się zgadywaniem co będzie w bx. Poza tym skąd pomysł, że rejestr bx jest 8 bitowy? > wraz z zadeklarowaną przestrzenią czyli wpisując jakąś zmienną pod x > przestrzeń to np: [tablica] jest początkiem czy końcem czyli bajtem 0 > czy 255 ? Jak się chcesz odwołać do 3 pola 8 bajtowej tablicy to znacznie łatwiej jest napisać [tablica-6] niż [tablica+2], więc odpowiedź jest oczywista - końcem. > > 5.W jaki inny sposób mogę przedstawić sumę elementów znajdujących się > w tablicach? Najlepiej użyć masm'a i przedstawiać w LISTBOX/EDIT jako kolejne linijki, albo w zestawie pól STATIC. > > Gdybym popelnił gape prosze o wyrozumiałość. Wyrozumiałość wyrozumiałością, ale ty prawie nic nie wiesz. Zacznij od kursu assemblera a potem bierz się za pisanie programów - odwrotna kolejność jest długa, trudna, bolesna i frustrująca. -- Pozdrawiam Michoo
Technical Details
Message-ID:
<hvcohf$bed$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:
<dd5aa12f-284f-4e03-b29b-529270d19ecb@b35g2000yqi.googlegroups.com>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: Michoo <michoo_news@vp.pl> Newsgroups: pl.comp.lang.asm Subject: Re: Tablica Date: Thu, 17 Jun 2010 11:05:53 +0200 Organization: http://onet.pl Lines: 56 Message-ID: <hvcohf$bed$1@news.onet.pl> References: <dd5aa12f-284f-4e03-b29b-529270d19ecb@b35g2000yqi.googlegroups.com> NNTP-Posting-Host: c6-100.icpnet.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1276765551 11725 62.21.6.100 (17 Jun 2010 09:05:51 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Thu, 17 Jun 2010 09:05:51 +0000 (UTC) User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090706) In-Reply-To: <dd5aa12f-284f-4e03-b29b-529270d19ecb@b35g2000yqi.googlegroups.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit