Nie tak dawno pisalem w watku na temat dzielenia 16bitow przez 16 bitow. Poszukaj. Jest tam algorytm, i konkretna procedura. Nie powinienes miec problemow z jej przerobieniem.
Funkcje trygonometryczne realizuje się często przez rozwinięcie ich w szereg Taylora. Ponadto powstał też algorytm CORDIC, który o ile dobrze pamiętam wymaga tylko operacji przesunięcia i dodawania, przez co świetnie nadaje się do implementacji w małych uC, czy FPGA (google). Do mnożenia stosuje się algorytm Bootha (niektóre rozwiązania sprzętowe działają...
1. Klawiatura matrycowa 4x4, są takie do dostania, naklejalne na obudowę. 2. Wyświetlacz LCD 1x20. 3. No i oczywiście procesorek... ;) Algorytm dzielimy na podprocedury : - inicjalizacja główna - inicjalizacja klawiatury - inicjalizacja LCD - obsługa klawiatury - obsługa LCD - program spinający całość, czyli pętla główna, ewentualnie jeszcze do tego...
Może nie najładniej to rozrysowałem - [url=http://forum.dzyszla.aplus.pl/topic... dzielenia liczb wielobajtowych z wykorzystaniem odejmowania
Standardowy algorytm dzielenia binarnego - jeden z dwóch do wyboru - restytucyjny albo nierestytucyjny. Opis znajdziesz w każdej książce z okolic arytmetyki komputerów.
Swego czasu w EP był kurs asemblera i tam pośród różnych innych procedur w asembelerze były procedury dzielenia wielobajtowego. Nie ma wprawdzie 16 przez 16 ale są inne DZIE3216.ASM DZIEL328.ASM http://www.ep.com.pl/pobierz.php?id=65 W końcu liczba 2 bajtowa to tez liczba 4bajtowa z dwoma bajtami równymi "0x00" Pozdrawiam ------- tutaj strona z pozostaBymi...
No to się pochwal co było. Dobry obyczaj wymaga dzielić się informacjami o popełniabnych błędach - wtedy wszyscy się uczą. Ktoś inny za pół roku znowu zje zęby na podobnej sprawie.
Witam muszę napisać algorytm na dzielenie 2 liczb z zabezpieczeniem dzielenia przez 0 . Algorytm ma być napisany do delphi 3 lub 7 czy może ktoś mi pomóc bo jestem zielony z góry dzięki za odpowiedz :).
Witam! Załaduj do jednego z rejestrów wartość, którą chcesz podzielić, drugi rejestr wyzeruj i odejmuj od pierwszego 10 zwiększając drugi o 1, dopóki pierwszy nie jest mniejszy niż 10. r31 - liczba do podzielenia, później reszta z dzielenia r30 - wynik dzielenia Jeśli nie potrzebujesz reszty, usuń ostatni wiersz. clr r30 dz_petla: inc r30 subi r31,...
W takiej notacji, że każda cyfra jest w osobnej komórce tablicy, problemem jest obsługa wartości ujemnych. Najłatwiej jest operować na kodzie uzupełnienia do dwóch. Wtedy wyliczanie przeniesienia nie jest skomplikowane. Tutaj możesz zastosować algorytm pisemnego odejmowania, przy czym najniższe cyfry trzymać pod niskimi indeksami, aby można było działania...
Kriti:zależy co robisz... jak np jakąś obróbke grafiki (obsługa kamerki albo wyświetlacza) czy dużej ilości danych to jak najbardziej się opłaca. Kilka linijek assemblera (a ARM ma strasznie prosty assembler) i możesz wyciągnąć 100% większa prędkość działania funkcji. Poza tym w niektórych miejscach (np uproszczone algorytmy dzielenia) wstawki w assemblerze...
Musze napisać program w 6800 w którym będę dzielić liczbę BCD przez 2. Czy zna ktoś algorytm tej oracji??
Problem w tym że nie mam zielonego pojecia o Bascomie i BASICU :/ Program pisze w ASM'ie. Jak na razie zrobiłem to na skróty i działa ale to nie to....(po prostu zamiast dzielić przez 120 dziele przez 128)
Dodawanie szostek tez zadziala, ale czym rozni się ono od dzielenia przez 10 ? Czy chodzi moze o wyzszosc symbolu " + " nad symbolem " * " ?? Mysle ze chodzi tylko o taką róznice, ze o ile sie orientuje to wykonanie dodawania zajmuje znacznie mniej czasu procesora niz mnozenie czy dzielenie.
Mnożenie to wielokrotność dodawania - 5*3 = 3+3+3+3+3 wynik = 0 mnożna = 5 mnożnik = 3 mnożnik > 0 ? tak -> wynik+= mnożna // 5 mnożnik-- // 2 mnożnik > 0 ? tak -> wynik+= mnożna // 10 mnożnik-- // 1 mnożnik > 0 ? tak -> wynik+= mnożna // 15 mnożnik-- // 1 mnożnik > 0 ? nie -> koniec algorytmu. Dzielenie to odejmowanie z testem, czy kolejna różnica...
Chyba najprostrzy możliwy algorytm to dzielenie przez podstawe systemu liczbowego, a reszta z dzielenia to będą kolejne cyfry w nowym systemie liczbowym.
Znasz taką strukturę jak "tablica" ? Albo taki algorytm jak dzielenie binarne? Wszystko da się zakodować. BTW swicth case na 200 pozycji mógłby być ciekawie zoptymalizowany, potwierdzicie?
Możesz pomnożyć resztę to przez 1000 a następnie znowu podzielić to przez dzielnik... Albo wykorzystać algorytm, z "dzielenia pisemnego" :D Np. 1.Pomnożyć resztę przez 10 2.Podzielić przez 16 3.Zapisać część całkowitą 4.Jeśli reszta>0 to skocz pkt. 1 5.Koniec PS Trzeba również pamiętać, o ustaleniu rozdzielczości(ilości cyfr) naszego ułamka dziesiętnego.
Tu masz moje biblioteki w której jest mnożenie i dzielenie o deklarowanej ilości bajtów (międzyinnymi).
No to chyba nic Cie nie uratuje ;] Zwróc jednak uwagę na to, że istnieje kilka rodzajów algorytmów dzielenia. Jedne są takie, które mają bardzo duży rozrzut ilości cykli między najlepszym a najgorszym przypadkiem. Inne są bardziej deterministyczne, ktore w najlepszym przypadku zuzyją znacznie więcej cykli, za to w najgorszym znacznie mniej, w porównaniu...
Czy komputer przekaźnikowy może wykonywać dzielenie i pierwiastkowanie? Cześć! Oczywiście, że może. Komputer przekaźnikowy, choć jest to starsza technologia oparta na przekaźnikach elektromechanicznych, może wykonywać różne operacje matematyczne, w tym także dzielenie i pierwiastkowanie. W tym przypadku algorytmy dzielenia i pierwiastkowania są zaimplementowane...
Poprawianie Atmela nie ma nic wspólnego z algorytmem dzielenia.
matematycznie to zalezy jaki zastosowano algorytm albo jakis prosty bez zadnych wodotryskow wtedy jest to tylko kewstja odpowiedniej ilosci danych a jeszli ktos sie do tego przylozyl i nie daj boze slyszal cos kiedys o kryptografi to raczej nalezalo by sobie to darowac bo zupelnie prosty algorytm moze sie okazac "trudnym" starczy jakies dzielenie modulo...
Idea jest bardzo prosta - to zwykłe skalowanie liczby: maxuint32 + 1 to 0x100000000 dzielone przez 10 to 0x1999999A albo 0x19999999 zalezy jak zaokrąglić Następnie dzielę przez 0x100000000 ( a to akurat >> 32) Czyli (X * (Y/10)) / Y = X / 10 Y = 0x100000000 Algorytm ma sens oczywiście dla platform, które mają mnozenie sprzętowe (nawet małych liczb),...
Musisz wynik podzielić przez 1000. Algorytmy dzielenia można znaleźć na stronie www.atmel.com w notach aplikacyjnych.
Poza tym pobieżnie przejżałem DS ATTiny i nie widzę instrukcji analogicznej do DIV w 8051?? Jak w nim dzielić liczby?? A czy znalazłeś MUL? ;) Do takich obliczeń niestety trzeba pisać własne funkcje. Można mnożyć i dzielić poprzez wielokrotne dodawanie lub odejmowanie danej liczby, ale to jest oczywiście dosyć mało optymalna metoda. Oczywiście mnożenie...
Proponuję do zapisu wykorzystać kod BCD ;) Algorytm dzielenia oczywiście trzeba także napisać samemu (http://forum.dzyszla.aplus.pl/topic127-...
Nie wnikałem w procedury dziel i zwyciężaj, ale już na pierwszy rzut oka zauważyłem błędy w procedurach "poczatek" i "wprowadzanie". Poniżej są te dwie procedury po poprawieniu błędów. Podstawowym błędem było dwukrotne wywoływanie funkcji IOresult. Ponadto w poprzedniej wersji procedury "wprowadzanie" użytkownik zmuszany był do wprowadzania danych pojedynczo,...
Dzielenie jest łatwe w uproszczeniu, jeśli np. obie liczby mają jednakową ilość zer z prawej strony, to o tyle mozna je przesunąć w prawo. Ogólnie algorytm dzielenia jak liczb dziesiętnych w podstawówce. Mnożenie jest już w µkontrolerze i to nawet w postaci cząstkowej fmul .
Tak, zgadza sie. Troche sie ostatnio spieszylem i zapomnialem ta linijke dopisac. Zorientowalem sie i mialem to zrobic w pozniejszym czasie. Widze ze czujnie sledzisz. Dzieki. Teraz to samo zrobie dla liczby 16 bitowej. Mam algorytm na dzielenie wielobajtowe, ale musze poszukac czegos takiego: 16bitow podzielone przez 4 bity. Ewentualnie zmodyfikuje...
Czy możesz rozrysować to blokowo? Nie bardzo wiem, po co to dzielenie MOD
Nie od parady był ten uśmieszek. Dlaczego? Cóż kolega stworzył bardzo mądry programik :D No to wręcz przeciwnie. Gorszy. Dlatego napisałem że nawet on się nie zawiesza. Chodzi mi o to że klasyczny algorytm dzielenia to zwykła pętla przesuwająca bity. Nawet jak dzielna będzie równa 0 to pętla powinna się wykonać tyle samo razy co zawsze, w przypadku...
ARM jest ma architekturę riskową więc dzielenie nie zawsze jest. Rdzeń Cortex M3 np. STM32 firmy ST ma dzielenie sprzętowe liczb całkowitych, zwróć uwagę na algorytm na pewno dzielenie jest i jeśli jest sprzętowe jest dużo szybciej. Jeśli to Ci nie weystarczy najlepiej będzie wziąć DSP'ka ze sprzętowym blokiem do operacji zmienno przecinkowcyh. Dzielenie,...
No w DSP (takich srogich jak np LTE i nie tylko) arytmetyka fixed point jest podstawą i float jest tylko ostatecznością. Ja tam i FFT i atan2 liczę na fixed point i jeszcze dzielenie algorytmem babilońskim co by przypadkiem nie użyć działania dzielenia, co robi zamieszanie w kodzie: https://github.com/marcinszajner/Driver/...
Chodzi mi o algorytm dzielenia liczby 14bitowej zapisanej dziesiętnie na dwie liczby 8 bitowe zapisane dziesiętnie. np.liczbie 8148 odpowiadają dwie 31 i 212. liczbie 8276 odpowiada 32 i 84. nie chodzi o konkretny język programisty tylko o algorytm. resztą zajmę się sam. dzięki.
1. Tablica statyczna - po prostu array 2. Parzyste elementy - reszta z dzielenia (dzielenie modulo = mod ) = 0 3. Algorytm bąbelkowy - znajdziesz opis np w tej paczce: http://www.dzyszla.aplus.pl/download-32.... Nie przejmuj się, że to C. Po prostu przeczytaj punkt 2.3 z pliku sorts1.doc 4. pętla i dodawanie do zmiennej 5. kolejna tablica - P pkt....
Witam. Wiele jest algorytmów dzielenia. Jednym z nich jest zastosowanie odejmowania. 1. A- 64 bitowa liczba; B - 32 bitowa liczba 2. A:=A-B; 3. Jeżeli A>=B wróć do punktu 2 jeśli nie to idź dalej. 4. W A jest reszta z dzielenia. P.S. jeśli byś chciał wynik dzielenia to musisz zliczac ile było odejmowań.
Płytkę już polutowałem, silnik zamontowałem tymczasowo w podstawce zrobionej z pudełka na płyty cd a góra służy jako ochrona. Wszystko ładnie się już kręci :). Napisałem też szkielet programu w Bascomie (świetny trening bo dopiero zaczynam) i właściwie działa ale algorytm jest trochę do bani. Bo timer1 (16bit) zlicza cykle zegarowe od przerwania INT0...
Nie sadzilem ze algorytm dzielenia dwoch liczb 16bitowych jest tak bardzo skomplikowany, ze nie ma sensu go wykonywac na procesorze 8 bitowym a mi sie nie bedzie chcialo go przekopac. Duzo rzeczy nie ma sensu. Teoretycznie powinienem napisac program dzielenia 16 bitow / 16 bitow przy czym dzielna < dzielnika, co daje przeciez liczby ulamkowe, a to...
(at)ElektrodaBot Czy fo variance = variance / (n - 1) jest prawidłowe? Dlaczego dzielimy przez n-1 a nie przez n?
ponieważ 51 nie ma sprzętowego dzielenia liczb 16 bitowych więc kolega musi poszukać sobie algorytmu do dzielenia takowych liczb i ten algorytm sobie zaimplementować prosta sprawa jeśli nie uda się znaleźć to ja udostępnie ale uprzedzam jest po angielsku jak zresztą cała współczesna elektronikia (no poza drobnymi wyjątkami) :D
Nie ma żadnej gotowej funkcji. Należy zaimplementować algorytm konwersji liczby (czyli dzielenie w pętli i wypisywanie znak po znaku wartości wynikającej z reszty dzielenia przez podstawę systemu.
[url=http://forum.dzyszla.aplus.pl/topic... dzielenia na wielobajtowych liczbach w systemie binarnym przedstawiłem w zlinkowanym tekście. Jeśli jednak chcesz zastosować stricte zasady dzielenia pod kreską, to również można. Najlepiej potraktuj liczbę wejściową jako ciąg tekstowy. Następnie od jego początku szukaj takiej wartości, która...
Algorytm wydaje się ok.
Witam, Dawno nie korzystałem z BASCOM'a, więc nie pamiętam już składni, ale algorytm jest następujący: 1) zapisujesz sobie w zmiennej temperaturę w stopniach 2) wykonujesz dzielenie całkowite temperatury przez 10 -> otrzymujesz cyfrę dziesiątki, zapisz do zmiennej x 3) wykonujesz dzielenie modulo temperatury (reszta z dzielenia) przez 10 -> otrzymujesz...
Algorytmy mnożenia i dzielenia, a także innych działań są dokładnie opisane m.in. w książce Józefa Kalisza Podstawy elektroniki cyfrowej . Sporo algorytmów można znaleźć na stronach producentów mikrokontrolerów w działach aplikacje. Jeśli znasz choć trochę asembler '51, to na pewno dasz radę. Pozdrawiam.
witam, musze zrobic dzielenie 2 doubli, czyli musze podzielic dwie mantysy 52bitowe. Nie moge uzyc koprocesora, wiec pozostaja rejestry 32bitowe. Probowalem trzymac jedna mantyse w 2 rejesrach (eax, ebx) w jednej byly by 32 bity w drugiej 20. Z druga tak samo. Uzylem algorytmu dzielenia przez odejmowanie, pomijajac fakt, ze jeszcze nie dziala tak jak...
Z pewnością sposobów jest mnóstwo. Przypomniałem sobie troszkę asembler mcs51. Mam nadzieję, że program w asemblerze wyjaśni wątpliwości (albo pogłębi ;-) ). Skorzystanie z "tabliczki dzielenia" lub "tabliczki mnożenia" na liczbach o podstawie 2^8 przedstawia poniższy program. Tabelę rozbiłem na 3x256 bajtów. Obliczenie realizowane wg zależności x=256*a+b...
hint: dzielenie przez 10 i modulo 10.
tjanusz :arrow: znam troszke c# na tyle ile mi jest to potrzebne, ale w c# przecież można także wstawiać kod asemblera tworząc np. swoje własne algorytmy dzałań matematycznych. Pszepraszam, ale nie wiem co to znaczy " żródełko" gcc lub FreePascal i jak mogę do tego dotrzeć :arrow: elektryk dokładnie np. teraz pracuję nad potęgowaniem modulo metodą iterowanego...
Ja mam algorytm i zrobiony podprogram wykonujący takie dzielenie, ale jest napisany na inny procesor. Dziwię się że ktoś jeszcze zajmuje się takimi procesorami. Z czystej ciekawości jestem ciekawy co cię zmusiło do stosowania takich uP?. Natomiast jeśli chodzi o dzielenie to łap mnie na GG, to jest sporo tlumaczenia zwłaszcza, że nie będę mógł ci pomóć...
Sensu to nie ma żadnego. Dla każdego 8-bitowca jest to zabójstwo, bo każda operacja na danych czy to BCD, czy binarnych 64-bitowych zajmie wieki (zwłaszcza mnożenie i dzielenie). Są algorytmy resztowe umożliwiające unikanie dzielenia przy konwersji bin->BCD i całkiem zgrabnie to wychodzi (nawet na głupiutkim 51), ale wciąż nie widzę w tym sensu, jeśli...
Wszystko zależy od zadania. Ja potrzebowałem sinusa od 2 do 30 Hz z grubsza. Aplikacja praktycznie z datasheeta. Sterowanie z zewnątrz, więc mogłem z LPT z PCta, ale ostatecznie Atmel 89C2051. Odczytywał parę cyfr i entera z RSa i wystawiał równolegle (5 razy) po 8 bitów (jak dobrze pamiętam). W środku był algorytm dzielenia (bo to było dawno). Obrabianie...
Najprostrzy algorytm polega na dzieleniu przez 10 i braniu reszty z dzielenia jako kolejne cyfry od najmłodszej do najstarszej. Jak będziesz chciał coś szybszego to trzeba będzie troche pogłówkować.
A, to przepraszam. W takim razie algorytm jest prawie poprawny.... Pierwsze dzielenie spowoduje już na początku utratę ostatniej cyfry. Więc najpierw modulo, a potem dzielenie całkowite. Co do warunku pętli - nigdy nie pamiętałem, czy przerwie na false czy true - użyj najlepiej debugera, albo przynajmniej kilku przykładów.
Wystarczy zliczyć ilość cykli(n) w ustalonym czasie (dla uproszczenia 1s) i poczekać do końca następnego cyklu i zakończyć zliczanie czasu (1,xxx s) Teraz dzielimy (n+1)/1,xxx i mamy częstotliwość z ułamkową dokładnością. Ta zależy od dokładności pomiaru czasu i algorytmu dzielenia (od tego jaką daje część ułamkową). Więc w istocie lekko zmodyfikowana...
Witam, Nie twierdzę że mój sposób sprawdzi się w Bascomie, dużo lepiej sprawdzi się asemblerze. Napisałem w Bascomie tak dla przykładu, myślę że tak jest przejrzyście, a chodzi po prostu o zasadę - sposób. AVR - serii Atmega to 8bitowce, więc tutaj w grę wchodziłoby tylko 8bit/8bit. Natomiast co ciekawe, AVR32 też nie ma dzielenia sprzętowego. Całkiem...
Niestety nie ma prostego sposobu. Można co prawda użyć takiej konwencji, że będzie możliwe dzielenie za pomocą "/". Jednak takie dzielenie może "pochłonąć" wszystkie zasoby układu programowalnego. Poza tym taki algorytm będzie bardzo czasochłonny i co gorsza czas jego wykonania będzie zależał od argumentów. Proponuję zastosować jeden ze sposobów dzielenia...
Na podzielnikach można oszukiwać na korzyść wynajmującego (właściciela) ale i sam wynajmujący może oszukać podzielnik. Aby mógł mniej zapłacić. O tym oszukiwaniu na podzielnikach to coś słyszałem. Możliwości kantów jest sporo - począwszy od algorytmu dzielenia kosztów, aż po ingerencję w sam podzielnik. Dlatego pytam co jest z tymi cieplomierzami....
Witam, Mam za zadanie napisać prosty kalkulator jako część zaliczenia na studiach, ale nie potrafię zrobić działania dzielenia. Proszę o pomoc. Ogólny zarys algorytmu wygląda tak: 1. Wciskamy przycisk 2. Wybieramy działanie 3. Podajemy liczby 4. Wynik
>> _greis_ Była o tym wcześniej mowa. Jest to najbardziej standardowy pomiar f, ale ma tą wadę że dla niskich f trzeba stosować długie czasy pomiaru. >Przemekdz Niekoniecznie trzeba stosować real/float. Przy nowych założeniach f wzorcowa 10 khz f mierzona 1-100Hz Dla 1 Hz zliczymy 10000 impulsów, dla 50hz 2000 impulsów, dla 99.9hz 1001 impulsów....
System liczbowy jak każdy inny - zamiast marnować bajt pamięci na jedną cyfrę mógłbyś w nim przechowywać znacznie więcej. Ale to już akademicka zabawa. Co do dzielenia - możesz zrobić tak, jak dzielenie pod kreską ;) Gdzieś miałem algorytm rozrysowany, ale zapodziałem :( Jak znasz assemblera, to moze wyczaisz - jest to w 3J wykonane: http://www.dzyszla.aplus.pl/programy_i_t...
Algorytm zamiany sądzę że znasz: dzielenie liczby przez podstawę i zapisywanie reszt - reszty te tworzą cyfry reprezentacji liczby w nowym systemie (post wyżej). Problem w tym, że są ustawione w odwrotnej kolejności. Tu właśnie przydaje się rekurencja lub tablica do zapamiętywania cyfr - to masz niestety zabronione... Ale chyba można skorzystać z biblioteki...
Witam Stosuję obliczenia numeryczne tylko w asemblerze z całkiem dobrymi efektami. Na stronie ATMELA można znaleźć gotowe procedury dzielenia i mnożenia wielokrotnej precyzji, jest pełno stron z przykładami działających procedur. Znalazłem nawet pierwiastkowanie (nie potrafię zrozumieć algorytmu :cry: ). Pisanie programów w asemblerze daje nieograniczone...
Panowie, dlaczego dyskutujemy o dzieleniu? Przecież w algorytmach filtrów itp. najczęściej wykorzystuje się operację mnożenia i dodawania.
Cieszy mnie to że chcesz dzielić się swoimi pracami, będę kibicował. Widzę pomiar mocy i prądu w analogu to chyba to nie wyjdzie, choć nie znam algorytmu. Schemat przejrzysty podzespoły dostępne... kuszące. Poczekam na efekty , pytania będą.
być może jest to odpowiedz na pytanie nr 4: #pragma argsused #include<stdio.h> #include<conio.h> #include <stdlib.h> #include <alloc.h> void wpisanie(float *t, int n); void wypisanie(float *t,int n); void sortowanie(float *t,float n); void minimum(float *t, int n); float *rezerwacja(int n); void zwolnienie(float *t,int n); int...
Skoro dzielenie (takie lub inne) jest w jakiejś funkcji, algorytm nie ma znaczenia, aż do powrotu z funkcji, wtedy dopiero jest "skutek" Tylko jeden warunek - do takiej zmiennej w przerwaniu musi być odwołanie wyłącznie w formie odczytu. Jeśli zmienna byłaby modyfikowana i w przerwaniu i w aplikacji to trzeba zapewnić atomowość.
[syntax=c] uint32_t bin2BCD(uint32_t val) { uint32_t retval; uint8_t count, i, *ptr = &retval; retval = 0; for (count = 0; count < BCD_DIGITS * 4; count++) { for(i = 0; i < 4; i++) { ptr[i] += 0x33; if((ptr[i] & 0x08) == 0) ptr[i] -= 0x03; if((ptr[i] & 0x80) == 0) ptr[i] -= 0x30; } retval <<= 1; if(val & (0x08L << ((BCD_DIGITS...
W szkole uczą dzielenia ręcznego w formie tabelki. Z dzieleniem w formacie dwójkowym jest tak samo. Ma tylko jedno ogromne uproszczenie: W systemie dziesiętnym liczba w pobranym fragmencie może nam się zmieścić 0, 1, 2, 3... lub 9 razy i zostaje nam reszta. W przypadku dzielenia dwójkowego liczba może się zmieścić 0 lub 1 raz... i zostaje nam reszta...
A czego się spodziewasz po dzieleniu liczb całkowitych? Algorytm działający na floatach jest dalece bardziej skomplikowany. Możesz się posiłkować mnożąc resztę z dzielenia przez stałą, np. 10, 100, 1000 itd i ponownie dzieląc, uzyskasz wtedy kolejne cyfry po przecinku. W ten sposób odkryjesz arytmetykę stałopozycyjną.
Witam Wydaje mi sie, ze w zapytaniu wkradl sie błąd: chodzipewnie o wzmacniacz antylogarytmujacy, czyli dzialajacy przeciwnie niz logarytmujacy. Pod pojeciem wzmacniacz mnozacy rozumiem natomiast uklad, który wymnaza 2 rozne sygnaly. Z tego co pamietam jest na to jedna metoda. Bazujac na wzorze: log(a*b) = loga + logb mnozenie mozemy zastapic dodawaniem...
Witam, rozwiązanie nazywa się algortym dead-beat. Załączam obrazek z procedurą rozwiązania. Uwagi 1. dyskretyzacja ZOH - tablice 2. czas próbkowania na podstawie czasu inercji w obiekcie 3. dzielenie y(z)/y0(z) - długie dzielenie - szeregi w czasie mają taką samą amplitudę przy k->nieskonczoność wobec tego powinno sie to ładnie zredukować. 4. uzyskany...
Witam, Mam następujacy problem chcialbym zrealizować następującą funckję: Y = 440 - 0,014*X gdzie Y,X to liczby 2 bajtowe Czy ktoś ma jakiś pomysł jak jakimś prostym (mało zajmującym miejsca) algorytmem to zrobić? Ew. Jak sie wykonuje mnożenie i dzielenie 2 bajtowych liczb optymalnie? Chodzi o język asambler. z góry dziękuje
Tu jest taki dość "przyjazny" algorytm, bez dzielenia i mnożenia, ale potrzebne są instrukcje przesunięć logicznych, porównywania, oraz AND i OR http://www.cp.eng.chula.ac.th/~krerk/pub... Jest jeszcze coś takiego, myślę, że Ci będzie pasować. Liczy pierwiastek z 32 bitowej liczby naturalnej (n), wynik w root: root=0 for(N=15;...
Witam Jestem w trakcie pisania programu do pracy inżynierskiej, który używał by optymalny algorytm Crouta i nie mogę sobie poradzić z pomijaniem zer. Mam już napisany pełny algorytm Crouta, lecz on wykonuje mnożenia i dzielenia przez zero. Optymalny algorytm pomija zera i nie wykuje działań przez co skraca się czas obliczeń. Będę bardzo wdzięczny za...
W atmega8 nie zmieści Ci się dzielenie? Wolne żarty. Przecież funkcja dzielenia 8bit/8bit to kilkanaście instrukcji... 16bit/16bit to ciut ponad 20 instrukcji. Oczywiście istnieje algorytm bin->bcd bez użycia dzielenia, nazywa się "shift-and-add" i jest opisany np. [url=http://www.engr.udayton.edu/faculty...
Akurat drugi przykład jest bardzo kiepską ilustracją, bo CRC operuje na wielomianach w polu GF(p), gdzie p jest liczbą pierwszą, a dzielenie takich wielomianów to nie to samo co dzielenie liczb dziesiętnych (przede wszystkim nie ma tam "pożyczki"). Na dodatek nie istnieje pole GF(10), bo 10 nie jest liczbą pierwszą. Poza tym w "przykładzie" są błędy...
Mam za mało czasu jeśli chodzi o naukę C. Co do zmiennoprzecinkowych to w pewnych musze ze względu na dzielenie które jest nieuniknione. Chciałem się upewnić czy rozkład zadań jest odpowiedni.
Jeśli nawet się nie da, to są tam operacje kopiowania rejestrów 16<->32 bit, coś się powinno dopasować. Algorytm w poście wyżej uzupełniłem, zakłada że mnożenie i dzielenie działają na 32 bitach. Sprawdź i daj znać o wynikach :)
ale sztuką jest umiejętność tworzenia i implementacji algorytmów w rozwiązywaniu problemów umiejętnie rozbijanych na podproblemy. Świat to jednak jest mały :D Właśnie skończyłem czytać co nieco o algorytmie dziel i zwyciężaj :D Aha, co do pytania, to ja zacząłem od c++ i sobie chwale. Co prawda wiele więcej nie umiem, ale myślę, że powoli zaczynam...
troche późno odpowiadam ale jak to mówią lepiej... więc najpierw mnożenie i dzielenie wydaje mi się że dałem Ci najlepszą rade jaką mozesz dostać, mnożenie i dzielenie są dość skąplikowane to fakt, dlatego nie sądziesz chyba że ktoś napisze to za Ciebie Ja natomiast dałem Ci linka do strony gdzie masz i mnożarki i dzielarki gotowe do ściągnięcia i do...
Witam, po analizie kilku przypadków, doszedłem do wniosku, że to linijka : [syntax=vb] q = CInt((p + k) / 2) [/syntax] wymaga zmiany. No i zmieniłem zwykłe dzielnie / na \ - dzielenie całkowitoliczbowe. [syntax=vb] q = CInt((p + k) \ 2) [/syntax] I pomogło. Teraz nawet tablica 800000000 elementowa jest sortowana :)
jak zadajesz takie pytanie, to zawsze podaj: -jaki procesor -ile ew. masz miejsca w pamieci (na tablice itd.) -raczej podawaj dokladnie problemy, bo to jest dosyc ogolne... -jaka ma byc dokladnosc tego jest cos takiego jak fixedpoint math - to taka matematyka na liczbach ulamkowych z uzyciem liczb calkowitych. Polega to na tym, ze zamiast...
Witam mam zrobić algorytm który z podanych 10 liczb ma podać mniejsze od 0. Oczywiście w programie ELI, siedziałem na tym dobre kilka godzin ale nie umie tego zrobić :( Dodawać odejmować mnożyć dzielić umie ale tego nie:( Proszę o pomoc:)
Już myślałem, że nikt nie odpowie :-) Ad1 Inicjalizację sygnałów mogę zrobić tak jak napisałem (przy deklaracji) lub (tak jak to jest w pierwszym poście) w obszarze uzależnionym od sygnału reset. I to jest jasne. Natomiast nie wiem jaka będzie różnica w fizycznej realizacji. Jeżeli ktoś pisze, że nie należy tego robić przy deklaracji to pewnie ma do...
Weź pod uwagę, że w kodzie powyżej jest prymitywny algorytm sprawdzania liczb pierwszych przez dzielenie modulo przez poprzednio znalezione. Szybkość sita też spada - ale ja pytam, jak te szybkości się porównują. do przedziału fib(46) - fib(47): 30 sekund / 3 godziny (tak z grubsza) Dodano po 1 Nieco szybsze od sita Eratostenesa jest sito liniowe. Przy...
Nie da się zrobić (po przesunięciu) sumy logicznej z czterema jedynkami na najstarszych pozycjach? Można tak zrobić i chyba tak zrobię tylko wcześniej muszę sprawdzić czy liczba była ujemna. Autora nie chciałbym spotkać na drodze (pisze lewo, przesuwa w prawo ;-) ) Albert faktycznie, miało być w prawo A że się tak zapytam czy przypadkiem nie chodzi...
Algorytm był prosty - najpierw dwie diody najbliżej wtyczki, z jednej i z drugiej strony. Ja działam inaczej, dzielę szereg na pól i sprawdzam (mam odpowiedni zasilacz) i już po jednym pomiarze mam połowę lampek sprawdzoną/sprawną, potem połowę nieświecąca znów dzielę na pól i po dwóch pomiarach mam 1/4 szeregu lampek z błędem itd itd.
Witam! Trzeba zrobić w oparciu o ten szkielet: Dodano po 54 Dodano po 1 Oops... zadeklarowałem zmienną "i" a powinno być "a"... sorry K.G.
Witam, Wiadomo, że rdzeń M4 - to inny procesor, myśle, ze koledze "marcinlas" chodziło o porównanie nie koniecznie możliwości DSP. Rdzeń M3 nie posiada DSP - trudno tylko w tym go porównywać. Raczej chodziło o np. czasy dostępu do pamięci przy 168MHz, ogólnie szybkość komunikacji z peryferiami, no i zwykłe algorytmy: mnożenie dzielenie z przecinkiem...
Zastanawiam się tez nad jednym czy nie szybszy bylby algorytm, ktory zamiast dzielenia i sprawdzania kazdej liczby po prostu bralby wszystkie kombinacje zadanych liczb pierwszych i tworzyl z nich iloczyny??? Moze to byloby prosciej i szybciej? No właśnie na tym polega sito erastotelesa, bierzesz pierszą liczbe (zaczynasz od 2) i usuwasz z tablicy wszystkie...
Witam, najmocniejsze algorytmy kompresji mają WinRK i PAQ8. Ale kompresują one długo i nie wiem czy pozwalają dzielić archiwa. Pozdrawiam, Krzystzof.
Witam, zabieram się za stworzenie prostego, ale efektywnego algorytmu rysowania trójkątów. Pośrednio do osiągnięcia celu potrzebuję algorytm do rysowania linii ukośnych. Najpierw chciałbym zaimplementować to w dowolnym współczesnym języku programowania, a docelowo zaimplementować sprzętowo. Samych algorytmów rysowania linii jest co najmniej kilka, jednak...
Witam !! Potrzebuje policzyć wartość skuteczna napiecia sinusoidalnego. Sygnal (50hz) podaje na 12bitowy A/C i nastepnie wyliczam go wegług Usk= √1/n * ∑ U_{sk} = \sqrt{\frac{\sum_{1}^n - chodzi Tobie o ten wzór ? Jest kilka metod (Herona, Newtona - powinno być w dobrych tablicach matematycznych). Mi najbardziej do gustu przypadła metoda...
Nie rób modulo, bascomowi zeżre to w cholerę cylki Zrób tak, jak jest, czyli AND 3 - to jest to samo, co modulo 4, a ogólnie wszystkie operacje typu modulo potęga dwójki można zastąpić taką konstrukcją: a MOD (2^b) = a AND ((2^b)-1) np. a MOD 32 = a AND 31, a MOD 512 = a AND 511 Ten sposób działa szybciej na każdej architekturze, bez wyjątków :) w wypadku...
To jest dosyć ciekawy temat - tradycyjne dzielenie liczb jest czasochłonne bez sprzętowego układu dzielącego. Dlatego ludzie upraszczają sobie życie stosując dodatkowe algorytmy, działające dla określonych dzielników. Dla dzielenia przez kolejne potęgi liczby 2 wystarczy przesuwać rejestr w prawo. Z kolei przytoczona przez Ciebie procedurka dotyczy...
Cześć! Najprostsza metoda o jakiej słyszałem to liczenie "przejść przez zero". Nagrywamy polecenie 5-10 razy, wykrywamy początek słowa, dzielimy na 20-100ms segmenty i liczymy średnią ilość przejść przez zero w danym segmencie, dobieramy zakres tolerancji (eksperymentalnie). Sporo roboty przy tworzeniu wzorca ale samo rozpoznawanie jest szybkie. Pozdrawiam!...
Ja bym to zrobił inaczej: wykonywał "random read" w połączeniu z "sequential read" weryfikując "current address read" według określonego wzorca weryfikacji (np. 1k/2k/4k/8k), etc. Przy pamięciach o wyższych pojemnościach dochodzi weryfikacja adresu A0..A2 ale to już nie stanowiło by problemu. W ten sposób wykryjesz rodzaj pamięci, ponieważ licznik adresowy,...
W moim AVRStudio zajmuje tyle samo, co jest raczej całkiem normalne. :) Faktycznie biorąc pod uwagę ATMega8 to taki programik zajmuje ponad połowę flasha. Głównym problemem jest to funkcja: dtostrf(x,5,2,buf); To ona zajmuje większość flasha, bo przy jej okazji pakowana jest cała arytmetyka zmiennoprzecinkowa. Sposobem na to jest operowanie...
dzielenie algorytm dzielenie liczba algorytm algorytm dzielenie reszta
radiotelefon odległość kalafonia izopropanol blokowanie przychodzacych
zasilanie świetlówki saeco kulka
Programowanie pilota do bramy Splendor Janus Piec włączony, ale nie grzeje - możliwe przyczyny