Jak obsługiwać liczby większe niż 255 w asemblerze dla 90s8515?

Asembler - 90s8515





Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?Ania_i_Grze=B6?= <brak_at_nospam_maila.pl>
Subject: Asembler - 90s8515
Date: Mon, 14 Feb 2005 09:47:34 +0100


Witam
W jaki sposob liczy sie na liczbach >255 ?
Gdy probuje:

ldi r16,300

to dostaje komunikat o bledzie, ale sie nie dziwie, bo na 8 bitach nie
da sie za bardzo zapisac liczby powyzej 255. Czy trzeba "rozbic" ja na
kilka rejestrow? Jak to zapisac, bo nie rozumiem..

--
Pozdrawiam, Ania i Grzes (Od 26.12.2004 mąż i żona)
- Żwirek kręci z Muchomorkiem!?

Poprzedni Następny
Wiadomość
Spis treści
From: "PAndy" <pandrw_at_nospam_poczta.onet.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 10:02:44 +0100



"Ania i Grześ" <brak_at_nospam_maila.pl> wrote in message
news:cupoj6$5ul$1_at_nospam_inews.gazeta.pl...
Witam
W jaki sposob liczy sie na liczbach >255 ?
Gdy probuje:

ldi r16,300

to dostaje komunikat o bledzie, ale sie nie dziwie, bo na 8 bitach nie
da sie za bardzo zapisac liczby powyzej 255. Czy trzeba "rozbic" ja na
kilka rejestrow? Jak to zapisac, bo nie rozumiem..

Najprosciej i najszybciej poszukaj noty na temat arytmetyki, dla chyba
kazdej rodziny chyba kazdy szanujacy sie producent podaj podstawowe
procedury na arytmetyke 16 i 32 bity jako absolutne minimum.
Alternatywnie poszukaj procedur w sieci - powinno byc tego sporo.



Poprzedni Następny
Wiadomość
Spis treści
From: =?ISO-8859-2?Q?=A3ukasz_Sok=F3=B3?= <el_es_at_nospam_p0cz74.0n37.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 10:07:40 +0100


Użytkownik Ania i Grześ napisał:
Witam
W jaki sposob liczy sie na liczbach >255 ?
Gdy probuje:

ldi r16,300

to dostaje komunikat o bledzie, ale sie nie dziwie, bo na 8 bitach nie
da sie za bardzo zapisac liczby powyzej 255. Czy trzeba "rozbic" ja na
kilka rejestrow? Jak to zapisac, bo nie rozumiem..

Artymetyka wielobajtowa :)

300 - 255 = 45 -> i to trzeba włożyć do 'wyższego' bajtu.

Czyli np.

ldi r15, 255
ldi r16, 45

Ale dodawanie i odejmowanie liczb 2bajtowych to ... najlepiej zastosować
jakieś biblioteki ;) żeby nie wynajdować koła na nowo...

eLeS
--
| W T F |
| O M F G |
| I HATE 1337 |
|speak so damn|
|much it hurts|

Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 10:36:04 +0100



300 - 255 = 45 -> i to trzeba włożyć do 'wyższego' bajtu.


chyba raczej
starszy: 1
młodszy 44

tak sie to liczy
300/256=1,17....
300-256*1=44
stad 1 starszy bajt i 44 młodszego


Pozdrawiam
AzaZeL



Poprzedni Następny
Wiadomość
Spis treści
From: "PAndy" <pandrw_at_nospam_poczta.onet.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 11:27:07 +0100



"AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl> wrote in message
news:cupre6$5su$1_at_nospam_bgnet.pl...

300 - 255 = 45 -> i to trzeba włożyć do 'wyższego' bajtu.


chyba raczej
starszy: 1
młodszy 44

tak sie to liczy
300/256=1,17....
300-256*1=44
stad 1 starszy bajt i 44 młodszego

Masz racje i dlatego najlepiej zamiast tworzyc procedurki od nowa uzyc
gotowych bibliotek procedur.



Poprzedni Następny
Wiadomość
Spis treści
From: Bielsky <bielsky__pomysl_troche_at_nospam_poczta.onet.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 11:30:57 +0100


Ale dodawanie i odejmowanie liczb 2bajtowych to ... najlepiej zastosować
jakieś biblioteki ;) żeby nie wynajdować koła na nowo...

Np. dołączane przez Atmela do assemblera...

Poprzedni Następny
Wiadomość
Spis treści
From: "Michal Machowski" <machowsk_at_nospam_interia.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 12:40:16 +0100



Użytkownik "Ania i Grześ" <brak_at_nospam_maila.pl> napisał w wiadomości
news:cupoj6$5ul$1_at_nospam_inews.gazeta.pl...
Witam
W jaki sposob liczy sie na liczbach >255 ?
Gdy probuje:

ldi r16,300

to dostaje komunikat o bledzie, ale sie nie dziwie, bo na 8 bitach nie
da sie za bardzo zapisac liczby powyzej 255. Czy trzeba "rozbic" ja na
kilka rejestrow? Jak to zapisac, bo nie rozumiem..
ldi r16, low(300)
ldi r17, high(300)
odpowiadajac na pytanie, trzeba, nie ma innej mozliwosci.



Poprzedni Następny
Wiadomość
Spis treści
From: "Piotr Wyderski" <wyderskiREMOVE_at_nospam_ii.uni.wroc.pl>
Subject: Re: Asembler - 90s8515
Date: Mon, 14 Feb 2005 14:05:45 +0100


Ania i Grześ wrote:

W jaki sposob liczy sie na liczbach >255 ?

A w jaki sposob liczy sie na liczbach >9 w systemie dziesietnym za
pomoca algorytmow znanych ze szkoly podstawowej? Odpowiedz:
tak samo, tyko tu uklad pozycyjny ma baze nie 10, lecz 256.

Czy trzeba "rozbic" ja na kilka rejestrow?

Oczywiscie.

Pozdrawiam
Piotr Wyderski