Ok spróbuje w ten sposób. Ogólnie nie chciałem wrzucać bezpośrednio instacji tych komponentów Nie ma takiej potrzeby. Podejrzewam, ze wartość ACC jest używana natychmiast po przypisaniu przez mnożarkę, wiec syntezer nie może wstawić rejestrów pomiędzy bloki 18x18 i 'spajplajnować' przetwarzania. Spróbuj wstawić opóźnienie na 1-2 rejestrach na wyjściu...
[syntax=avrasm] ; PODPROGRAM MNOZENIA LICZB DWUBAJTOWYCH ; PISAL I TESTOWAL: MIROSLAW LACH, AVT ; WEJSCIE: ; R0 - ADRES NAJMLODSZEGO BAJTU MNOZNEJ ; R1 - ADRES NAJMLODSZEGO BAJTU MNOZNIKA ; WYJSCIE: ; ILOCZYN JEST UMIESZCZANY W MIEJSCE CZYNNIKOW ILOCZYNU, GDZIE ; ZLOZENIE BAJTOW (R0-1):(R0):(R1-1):(R1) DAJE WYNIK ; (R0-1) - BAJT NAJSTARSZY, ZAS R0 I...
Masz mnożenie róznych liczb dalej sobie analizuj sam (literki przy zmiennych oznaczają ilość bitów): [syntax=c]z16 = x8 * y8; 98:80 91 00 01 ldsr24, 0x0100 9c:90 91 09 01 ldsr25, 0x0109 a0:89 9f mulr24, r25 a2:c0 01 movwr24, r0 a4:11 24 eorr1, r1 a6:90 93 13 01 sts0x0113, r25 aa:80 93 12 01 sts0x0112, r24 z32 = x16 * y16; ae:20 91 0a 01 ldsr18, 0x010A...
Oczywicie tę stronę znasz? http://www.8052.com/ http://www.8052.com/codelib.phtml
Proszę o podpowiedź czy układy CPLD/FPGA będą w stanie przetworzyć operacje matematyczne w kilku cyklach zegarowych (może nawet w jednym cyklu) ? Temat dotyczy sprzętowego (bardzo szybkiego) mnożenia liczb 64bit x 64bit a nawet 128bit x 128bit, Większość nowoczesnych układów FPGA ma wbudowane sprzętowe układy mnożące, tyle że one operują na liczbach...
Witam! Oczywiście to trochę zgadywanie, ale w większości znanych mi sterowników w ten sposób oznacza się blok, który wykonuje mnożenie dwóch liczb w formacie zmiennoprzecinkowym (real). Stad skrót MUL(tiplication)-R(eal). Wynikiem mnożenia jest oczywiście również liczba zmiennoprzecinkowa.
Zgadza się! To o czym piszesz to metoda korelacyjna, która jest najczęściej stosowana do obliczania DFT (przynajmniej dla N<32, dla większych N stosuje się FFT). Wyobrażenie sobie DFT jako filtracji jest dobre i intuicyjne przy analizie widma, jednak samo DFT to nie filtracja! Dopiero cały proces: DTF->pomnożenie widma sygnału przez widmo odpowiedzi...
Pozwólcie na dorzucenie jeszcze krótkiego rysu historycznego. Jeszcze nie tak dawno silna była grupa wyznawców pisania w ASM, którzy mówili bardzo brzydkie rzeczy o C - przecież nic tak nie cieszy rasowego programisty jak "ręczne" mnożenie dwóch liczb 16bit zapisanych w U2 - tylko TAK pisze się OPTYMALNIE ;). Z biegiem czasu ich argumenty bardzo straciły...
Za zadanie mam mnożenie dwóch liczb 3-bitowych. Czy jest ktoś w stanie mi powiedzieć, czy jest dobrze? https://obrazki.elektroda.pl/1711311500_...
zapoznałem z kursem exel na yt i wszystko ok :) gra gtara
Typy wartości pośrednich: literał 976 to int, 5000 to int, a więc mnożenie da int'a. Rzutuj jedną z liczb na long int przed mnożeniem.
Chcę obliczyć współczynnik b = 256*(x1-x2)/(y1-y2) A mnożysz przez 255 :P wsp_b = wsp_b*0xff; Jeżeli nie jest Ci potrzebny wsp_a, możesz zrobić tak: long int wsp_b; wsp_b = (((long int) (x1-x2))<<8) / ((long int) (y1-y2)); Nie wiem, jakiego typu są zmienne x1, x2, y1 i y2, a jeżeli jest...
Poczytaj trochę Wiki Bascoma [url=http://wiki.mcselec.com/bavr/FUSING... bo tam zawsze pod każdym tematem pisze "See also" i po nitce doszedłbyś do kłębka [syntax=vbnet]B = Fusing(b , "#.&")[/syntax] Wszystko zależy co jeszcze ma robić ten kod bo do takich zadań to możnaby chyba zrezygnować z Single ;) ..ale jak ma robić tylko to..
Mnożysz lewą cyfrę przedstawiającą wartości dziesiątek x10 i dostajesz 10100 binarnie mnożenie warto zrealizować jako odpowienie przesunięcie bitowe, gdy mnożysz x10 to tak jakbyś mnożył x8 i mnożył x2 27x10 = 27x(8+2)= 27x8 + 27x2 = 27x2^3 + 27x2^1 czyli wynik mnożenia dowolnej liczby x10 jest rowny sumie jej przesuniecia w lewa o 3 bity i przesuniecia...
Wyniki: W1 – 60h, W2- 61h, W3 – 62h, W4 – 63h A1 – 20h, A2 – 21h B1 – 22h, B2 -22h Start: MOV 20h, #0fdh ;A1 MOV 21h, #0ffh ;A2 MOV 22h, #0fdh ;B1 MOV 23h, #offh ;B2 ;mnożenie ;A1*B1 MOV A, 20h MOV B, 22h MUL AB MOV 80h, A ;A1*B1 L MOV 50h, B ;A1*B1 H ;A2*B2 MOV A, 21h MOV B, 23h MUL AB MOV A 41h, A ;A2*B2 L MOV B...
Ten algorytm przedstawia prosta metode mozenia ktora czesto byla stosowana w procesorach nie posiadajacych instrukcji mnozenia. wykozystuje sie w nich rotacje bitow i dodawanie. Algorytm jest bardzo prosty w realizacji.
No to przypomnij sobie z podstawówki mnożenie sposobem pisemnym :] a na tablicach (liczby w formacie binarnym, najmniej znaczacy bajt ma indeks 0): unsigned char a[N], b[N], c[N+N]; int p1, p2; for(p1 = 0; p1<N+N; p1++) c[p1] = 0; for(p1 = 0; p1<N; p1++) { for(p2 = 0; p2<N; p2++)...
Wymóg jest taki aby liczby były wprowadzone decymalne i wynik był wyprowadzony w decymalnych.
No to w takim układzie zerujesz sobie zmienną i w pętli dla każdej cyfry od lewej do prawej wykonujesz: mnożenie przez 10, dodawanie wartości cyfry... Jedyne czego w takim układzie potrzebujesz, to funkcji do mnożenia i dodawania liczb dowolnej długości.. do konwersji w przeciwną stronę liczbę dzieli się przez 10(lub przez inną podstawę) i resztę dopisuje...
Co do problemu to chwilowo nic nie dodam. Zauważyłem jednak że nie zwalniasz zaalokowanej pamięci a w C++ to poważny błąd. Każdy new powinien być w parze z delete, a ponieważa alokujesz tablice powinieneś użyć delete[].
http://obrazki.elektroda.pl/7641684300_1... Witam. Przedstawiam następny projekt, który powstał jako moja odpowiedź na zalewającą nas falę projektów mikrokontrolerowych, które są dosłownie wszędzie. Jest on także dla mnie wielkim powodem do dumy, ponieważ "wystąpił" na okładce kwietniowego wydania EdW. Wielu pewnie od razu napisze….”ale...
Kolega walek33 , w swoim specyficznym stylu (z nieudolnie ukrywaną sympatią) zasugerował tylko rozbicie funkcji dla lepszego zrozumienia. Jeżeli pominąć warunek, to zostanie SUMA.ILOCZYNÓW(($A$2:$A$81=&... SUMA.ILOCZYNÓW działa jak tablica zero-jedynkowa. Jeśli jedną...
Bolek: 1.Żeby nie było przesunięcia tak jak mówisz, to musisz użyć liczb ujemnych. Bo jak masz liczby -20 i 20, to skalowanie x3 zamieni to na -60 i 60 - wszystko ok Jak masz liczby 10 i 20, to skalowanie x3 zamieni na 30 i 60.. środek kwadratu jest już zupełnie gdzie indziej 2.Żeby otrzymać dobrą płynność powinieneś użyc wyników z mnożenia/dzielenia...
No to właściwie się każdy nada do tego celu. Najprościej jest zapisać liczby w układzie dziesiętnym: jedna komórka pamięci jedna cyfra. Dodatkowa komórka do pamiętania znaku i jeszcze jedna do pamiętania położenia przecinka. Muszą być takie dwa zestawy dla obu wprowadzanych liczb. Przed dodawaniem i odejmowaniem przesuwasz jedną liczbę tak by przecinki...
Polecam książkę "Wprowadzenie do cyfrowego przetwarzania sygnałów" Lyons, Richard na podstawie, której powstał poniższy kod. Poniżej kod implementujący filtr FIR. F0 - częstotliwość odcięcia filtru Fs - częstotliwość Nyquista próbkowanego sygnału. Jeśli częstotliwość próbkowania wynosi 1Mhz to częstotliwość Nyquista wynosi 500kHz dolnoprzepustowego...
Chyba będzie najlepiej jak posłużę się przykładem. Przedstawiam wartości maksymalne. przyklad 1. x=ADC/timer - x to bedzie duży ułamek np. 0,00 999 999 999 będzie użyty jako stała wyliczona na początku z przetwornika ADC i timera, timer może przyjąć nawet wartość 9 999 999 999 999 przyklad 2. y=timer2*x - timer2 moze przyjmowac wartosci 9 999 999 999...
Dzięki o to chodziło oba rozwiązania są ok
Skorzystaj z tego wzoru (dzielenie liczb zespolonych): http://obrazki.elektroda.pl/7457477600_1... gdzie: z1 = 1+0j z2=0,1-0,1j z tego widzimy że: φ1 = 0° φ2=-45° na końcowym etapie obliczeń pomnóż licznik i mianownik przez 10 (tzw mnożenie ułamka przez 1 w celu uproszczenia) i w mianowniku wciąg 10 pod pierwiastek (pod pierwiastkiem...
Witam Potrzebna pomoc w poznaniu assemblera Z80 konkretnie emulator Altairz80, potrzebuje zrobic zadanko na zaliczenie... mnożenie liczb binarnych 7-cyfrowych ze znakiem. Czy macie jakies zrodelka z ktorych moglbym skorzystac... probowalem googlowac ale za wiele nie ma na ten niemal wymarly temat. Rzućcie jakies linki z podstawowymi podstawami Pozdrawiam...
pierwszy działający komputer zbudował Herman Hollerith pod koniec XIX wieku Wilhelm Schickard w 1623 skonstruował na zamówienie Jana Keplera jedną z pierwszych na świecie maszyn liczących, wykonującą dodawanie, odejmowanie, mnożenie i dzielenie liczb całkowitych. Maszyna ta, złożona z elementów drewnianych, spłonęła w 1624 w czasie wojny trzydziestoletniej....
Szkoda, że nawet na próbę trzeba się rejestrować, bo chętnie bym sprawdził, czy wersja 5 już umie poprawnie przeliczać dec na hex. Co jakiś czas pytam chata GPT i copilota "What ASCII characters are equivallent of four character code 1229215826?" i zawsze dostaję inne wyniki; raz jak pociągnąłem temat to bot upierał się, że wykonał kod (poprawny) w...
Witam Czy posiada ktoś kod do asemblera, wykonujący mnożenie liczb szesnastkowych?? [url=http://www.google.pl/search?num=100... Google zna. Na wszelkie procesory, do wyboru do koloru. Naprawdę używanie Google nie boli.
No więc jest na to prosty sposób i zwie się fixed-point math. Zakładasz, że liczba jest zapisana w formacie np. 4:4 bity , gdzie 4 wysokie bity to liczba całkowita w przedziale 0-15 , a 4 niższe to ułamek w przedziale 0/16-15/16 Jeżeli mnożysz liczbe 8:0 przez 4:4 to masz wynik 12:4 i wszystko cacy - masz swój wynik i wartość ułamkową. Jeżeli chciałbyś...
W C mnożenie dwóch intów zawsze da int, rzutowanie tego do long później nie ma sensu... Ale jeżeli w mnożeniu bierze udział chociaż jeden long.... :) ... czyli zamiast i = 258*258 spróbuj: i=258l*258 :) Pozdrawiam. P.S. W rozpisce chodzi o to żeby uniknąć mnożeń przez 256, czyli z wejścia wziąc a,b,c i d. obliczyć ich iloczyny, a dopiero później na...
To mnożenie liczby przez 10 ma tak wyglądać? [syntax=x86asm]mov ax, 10 mul liczba2[/syntax]
To był tylko mój dodatkowy opis jak zabierałem sie za ten kod, gdy programujesz chip mkAVRCalculator posiadasz do wyboru opcje zabezpieczajace. Mi chodziło tez by nie blokowac całkowicie procesora i umożliwić wczytanie programu od nowa jesli UID został wykasowany a program zablokowany(tak do testów na początek). https://obrazki.elektroda.pl/5766266800_...
Z MUL jest taki problem że wynik ląduje w R0:R1 (dla kompilatora jest to dodatkowy koszt MOVW+CLR). A to mnożenie dwóch liczb jednobajtowych wygląda mi na mnożenie jednej liczby przez 2.
Tego zrobić wręcz nie można. Bo algebrze są tylko liczby. W algebrze nie występuje pojecie czasu. Algebrą można opisać układy z rezystorami - bo tam nie ma zjawisk w czasie. Mylisz sens jakiegoś działania z możliwością zrobienia czegoś. Jak podłączę do rezystora napięcie zmienne w czasie to i prąd będzie zmienny w czasie, więc jak najbardziej są zjawiska...
Elektronicznie takie sumowanie (liczb całkowitych, czyli jednostki ALU) jest prostą operacją i wewnętrznie tak się odbywa, ale w szeregu na wielu tranzystorach równocześnie (a właściwie: kaskadowo). Stąd architektura (szerokość danych) procesora - wskazuje, jak dużo bitów (jak długą liczbę) może zsumować i dać wynik w ramach taktu. Ponieważ zanim wynik...
Masz 2 liczby: A1A0 i B1B0 (gdzie A i B mogą przyjmować stany 0 lub 1), mnożysz je jak w szkole A1A0*B1B0=A1*B0+A0*B0+2*(A1*B1+A0*B1) to razy 2 to jest to przesunięcie o jedną pozycję w lewo przy liczeniu słupków. Poszczególne mnożenia robisz bramkami AND. Wyniki mnożeń cząstkowych dodajesz na sumatorze, mnożenie przez 2 w systemie binarnym, uzyskujesz...
Zmusza. Dzielenie i mnożenie na liczbach zmiennoprzecinkowych nie są tak upierdliwe jak dodawanie i odejmowanie. Ten dodatkowy kilobajt to procedury konwersji, mnożenia i dzielenia na liczbach zmiennoprzecinkowych.
No! Dzięki! Rzeczywiście nie takie to trudne:) Użyj klasycznego mnożenia liczb wielobajtowych, kilka mnożeń i kilka dodawań. Klasyczne mnożenie liczb wielobajtowych, może dotyczyć liczb np. czterobajtowych? lub więcej? Gdzie o tym mogę poczytać?. Czy w trakcie wykonywania operacji wielobajtowych lepiej używać stosu czy rejestrów i przełączać się między...
Może komuś się przyda: kupiłem płytkę CH32V003 dla RISC-V Nano i programator WchlinkeE 1v3, całość działa pod MounRiver studio. Przy zegarze 48 MHz: szacunkowo szybkość majtania GPIO (przykład GPIO): while (1) { GPIO_WriteBit(GPIOD, GPIO_Pin_6, (i == 0) ? (i = Bit_SET) : (i = Bit_RESET)); } to około 0.93 MHz Dodanie 2 floatów (32 bity) zajmuje od 115...
Normalnie Pozorną A od kiedy moc pozorną liczymy z iloczynu wektorowego prądu i napięcia? Od zawsze - tylko nie koniecznie jest to takie oczywiste. Generalnie większość zna postać zespoloną używaną w liczeniu układów prądu. I tu chyba nie masz obiekcji że moc w postaci liczb zespolonych to P = U * I I teraz rozpisując liczby zespolone na płaszczyznę...
Jeżeli ma być kolokwium, to raczej nie z posługiwania się kalkulatorem. Do obliczeń z pierwszego zdjęcia raczej należy użyć kalkulatora, ewentualnie grzebać się w tablicach trygonometrycznych a potem mnożyć wielocyfrowe liczby "pod kreską". Obliczenia z drugiego zdjęcia łatwo można zrobić "na piechotę". Trzeba za pomocą wzoru Eulera (od tyłu) zamienić...
Witam. a i x są liczbami 16 bitowymi. wykonałem mnożenie liczby 16bitowej przez 16 bitową i teraz mam problem bo nie mogę zrobić dodawania(+b). wynik mnożenia liczba 32bitowa, chciałem dodać jakąś liczbę 8bitowa. moje pytanie jak zrobić w asemblerze dodawanie liczby 8b do 32b?
Sprzętowo czy programowo? Ile bitów. Ogólnie jest to mnożenie kolejnych liczb przez potęgi dziesięciu.
Wiesz, jak wykonuje się mnożenie pod kreską? Ten sam algorytm możesz śmiało zaimplementować w oparciu o tablice mnożąc absolutnie dowolnej wielkości liczby. Najszybciej chyba znajdziesz rozwiązania oparte o assemblera, ale żaden problem przenieść to na język wysokiego poziomu. Coś podobnego (choć oparte o kod BCD) znajdziesz np w [url=http://www.dzyszla.aplus.pl/program...
Wg pewnej książki klasyczne mnożenie dwóch liczb po milionie cyfr na maszynie o dzielności 10MIPS (mało ale niech tam) zajmie 24 godziny! Istnieją inne algorytmy, wg. tego samego źródła algorytm Karatsuby 10 minut, FFT 10 sekund (doba to 86 400 sekund) na tej maszynie pomnożenie miliarda cyfr przez miliard zajmie tylko 2700 lat (FFT 3 miesiące)
Popraw obliczenia. Masz błąd przy obliczaniu prądu całkowitego. I = (141.42 + j141.42)/(8.8462 + j30.7692) = 5.46577 - j3.02474. I może oblicz tez moduł. Przepraszam za pomyłki w poprzednich obliczeniach. Spróbujmy ponownie obliczyć prąd płynący przez obwód, tym razem dokładnie: Prąd całkowity ( I ) : I = \frac{V1}{Z_{total}} I = \frac{141.42 + j141.42}{8.8462...
mnożenie liczb bitowych mnożenie liczb asembler mnożenie liczb binarnych
wymiana grzałki fujitsu s7020 bosch krótki
Zamienniki tranzystora TGAN60N60F2DS: STW60N60DM2, FCP190N60E i inne Różnice między tranzystorami BC550B i BC550C