Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

DOTYCZY PROGRAMOWANIA ASSEMBLER AVR

Awatar użytkownika
darecki23
-
-
Posty:41
Rejestracja:20 mar 2005, o 16:18
Lokalizacja:Szczecin
DOTYCZY PROGRAMOWANIA ASSEMBLER AVR

Postautor: darecki23 » 8 paź 2005, o 12:30

JAK PODZIELIĆ LICZBĘ 8-BIT PRZEZ LICZBĘ 8-BIT W AVR ASSEMBLER? CZY KTOŚ POSIADA JAKĄŚ PROCEDURKĘ? DODAM, ŻE MIKROKONTROLER, KTÓRY PROGRAMUJE TO ATMEGA I NIE MA ON INSTRUKCJI DIV.

Czajnik
-
-
Posty:264
Rejestracja:17 cze 2004, o 15:40
Lokalizacja:Kraków
Kontaktowanie:

Postautor: Czajnik » 8 paź 2005, o 13:16

nomusze cię rozczarowac.... nei jest to takei proste... najłątwiej ale to zajmuje troche czasu to dodawać do siebie kolejne dzielniki az do momentu aż ich suma bedzie wieksza od liczby dzielonej... a różnica tej liczby którą otrzymasz z liczbą którą dzielisz da ci reszte albo licznik ułamka mianowniekiem jest dzielnik.

radzio
Moderator
Moderator
Posty:967
Rejestracja:13 maja 2003, o 10:33
Lokalizacja:Sosnowiec
Kontaktowanie:

Postautor: radzio » 8 paź 2005, o 14:33

Kod: Zaznacz cały

; Procedura dzielenia 8bitowego ; pochodzi z noty AVR200 firmy ATMEL .def drem8u =r15 ;remainder .def dres8u =r16 ;result .def dd8u =r16 ;dividend .def dv8u =r17 ;divisor .def dcnt8u =r18 ;loop counter div8u: sub drem8u,drem8u ;clear remainder and carry ldi dcnt8u,9 ;init loop counter d8u_1: rol dd8u ;shift left dividend dec dcnt8u ;decrement counter brne d8u_2 ;if done ret ;return d8u_2: rol drem8u ;shift dividend into remainder sub drem8u,dv8u ;remainder = remainder - divisor brcc d8u_3 ;if result negative add drem8u,dv8u ;restore remainder clc ;clear carry to be shifted into result rjmp d8u_1 ;else d8u_3: sec ;set carry to be shifted into result rjmp d8u_1 ; koniec procedury dzielenia

a_antoniak
-
-
Posty:651
Rejestracja:13 sty 2005, o 18:38
Lokalizacja:Krasnystaw
Kontaktowanie:

Postautor: a_antoniak » 8 paź 2005, o 18:23

Dodam, że wspomniana przez Radzia nota zawiera procedury mnożenia i dzielenia liczb całkowitych za znakiem i bez zanku zarówno 8- jak i 16-bitowych, a wszystko z algorytmami itp., więc jest co poczytać.

Awatar użytkownika
darecki23
-
-
Posty:41
Rejestracja:20 mar 2005, o 16:18
Lokalizacja:Szczecin

Postautor: darecki23 » 8 paź 2005, o 18:38

Dzięki o to chodziło.

Wróć do „Elektronika - tematy dowolne”

Kto jest online

Użytkownicy przeglądający to forum: Google [Bot] i 6 gości