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...
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...
Czy mnożenie ma być wykonywane szeregowo (np. po 1 bit na cykl zegara), czy równolegle (wszystkie bity razem)?
Operacjami bitowymi - mnożenie logiczne przez maskę się przyda.
Zgadza się. Przeglądałem schemat i czytałem opis, lecz podana na wyjściu częstotliwość wynosi 1Hz ( taką już potrafię uzyskać ) a potrzebuję 1/60Hz ( impuls co minutę ) i nie wiem jak to dalej podzielić - 1Hz na 60 poprzez w/w układy 74LS90 i 74LS92. Przecież to oczywista oczywistość - należy podzielić przez 60. Zaś 74LS92 to licznik 2 razy 6 (do 12),...
Witam, buduje sobie spokojnie na zaliczenie termometr oparty o atmege i ds1820 wiem że są gotowe rozwiązania na forum ale ja chce zrobić to sam, w pełni to rozumiejąc i umiejąc się z tego wytłumaczyć czemu kod wygląda tak a nie inaczej ogólnie jedna rzecz mnie męczy - mianowicie wymyśliłem sobie że na mój wyświetlacz puszcze cyfry przez 7448(wchodzi...
Rozważam jak na małych architekturach fajnie mnożyć integery przez współczynniki jak 1.3, 1.5 ... oraz 0.9 , 0.7 ... Cel: w wielu zastosowaniach "na styku z człowiekiem' trzeba się dostosować do logarytmicznego naszego postrzegania rzeczywistości. Czyli postrzegane jako równe skoki głośności, tonu (częstotliwości) tak naprawdę muszą być wykładnicze....
Witam Mam rozwiązanie twojego problemu ale w osobnych plikach. Jest tam dodawanie, odejmowanie, mnożenie i dzilenie we wszystkich kodach (NKB, U1, U2, BDC). Musisz przejrzeć te programy i wybrać odpowiednie procedury.
No bo zmienne nie mają nieskończonej dokładności. A liczba 0.1 w kodzie binarnym nie jest liczbą okrągłą i musi być zaokrąglana.
Witam kolegów. Razem z sąsiadem próbujemy pomóc mojemu synowi na studiach a mianowicie musi napisać program na maszynę Turinga - mnożenie binarne dwóch liczb. Dotarliśmy do momentu, że wiemy, że potrzeba 3 taśmy ale co dalej? Jedyne co mamy to napisany program dodawani binarnego, ale na mnożenie nie mamy kompletnie pojęcia (dodawanie na zdjęciu). https://obrazki.elektroda.pl/7977236900_...
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...
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...
Zastąp mnożenie wielokrotnym sumowaniem. Ma to wyglądać dokładnie jak mnożenie w słupku na kartce tyle że na liczbach binarnych tj: jeśli na danej pozycji w drugiej liczbie jest 1 to musisz wykonać dodawanie. oczywiście pierwsza liczba musi być proporcjonalnie do bitu przesunięta w lewo. 1101 x 1010 --------------- 1 x 1100 0 x ---- 1 x 1100 0 x -----...
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++)...
To będzie mniej więcej tak: (umieściłem pół tablicy, drugie pół musisz sam zrobić ;-) ABCD y1y2y3y4 0: 0000 0000 1: 0001 0000 2: 0010 0000 3: 0011 0000 4: 0100 0000 5: 0101 0001 6: 0110 0010 7: 0111 0011 Jako przykład posłużę się wierszem nr 6. Sygnał wejściowy 0110 to dwie liczby binarne 01 oraz 10. Mnożysz je przez...
Zaprojektować układ mnożący dowolną liczbę binarną przez liczbę stałą 3. Liczba wejściowa ma być podawana z rejestru R1, a wynik zapisywany do rejestru R2. Rejestry 8-bitowe. AI: Czy układ ma być zrealizowany sprzętowo (np. w postaci schematu logicznego, VHDL/Verilog) czy programowo (np. kod w asemblerze lub C na mikrokontroler)? Schemat logiczny, tablice...
Kiedyś napisałem dla '51 BCD»BIN BIN»BCD MNOŻENIE DZIELENIE z możliwością deklarowania ilości bajtów do konwersji. Może komuś się coś przyda.
Witam, mam do rozwiązania zadanie, w którym trzeba zrobić układ iteracyjny mnożący liczbę binarną 16-bitową razy 3. Nie mam pojęcia jak narysować graf do tego układu. Czy mógłby ktoś narysować ten graf? Pozdrawiam
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ą...
Przyłączam się do prośby. Czy jest w ogóle możliwe zrobienie takowego który dodaje/ odejmuje/ dzieli/ mnoży liczby binarne? Ew. zmiana na dziesiętne może być dodatkiem :) Głównie mi chodzi o operacje na liczbach binarnych. Drewniany już widziałem :)
Rozumiem, faktycznie technika wymaga łatwiejszych rozwiązań. Jednak czy dałoby radę "ominąć" mikrokontrolery i programowanie? Ponieważ użycie mikrokontrolerów znakomicie upraszcza, praktycznie nie wykształciły sie rozwiązania alternatywne, nie najdziesz gotowego układu scalonego mnożącego 8 bitx8 bit ani przetwornika kodu binarnego 16bit na 5 cyfr...
il Blast"] Wiem z notatek, że 0,81640625 to 0,11010001 (2^(-1) + 2^(-2) + 2^(-4) + 2^(-8)), ale niestety nie wiem, jak to zostało obliczone, a tylko tego mi brakuje do pełnego zrozumienia tematu więc jakby mi ktoś pomógł byłbym wdzięczny:) Siedziałem nad tym dość długo, szukałem na googlach i 0 rezultatów:) a może tą część ułamkową wyznaczono tak jak...
Nie zawsze na końcu otrzymasz 5 bo przecież 2*5=10. Czy jednak nie prościej zamienić liczby na normalny kod binarny, mnożyć je w tej postaci i potem dopiero zamienić na kod BCD? Pozdrawiam wszystkich jjanek
Kod U2 jest efektywny, ale w tym przypadku raczej autor nie zastosuje zapisu wagowego zgodnie z przykładem. Już prędzej był bym skłonny by zapisywać wartość np. 25,7 jako 257 później zwykłe mnożenie binarne przez maskę i mamy osobno 25 i 7, na wyświetlaczu 25,7. Oczywiście wszystko ładnie przy zapisie dziesiętnym. Bo heksadecymalnie to już mniej ładnie...
załóżmy, że masz tablicę z liczbą wejściową, w której zamieniłeś kody ASCII cyfr na liczby z przedziału 0-35 liczba wejściowa ma bazę b1, baza wyjściowa to b2 Liczba wyjściowa to narazie tablica skłądająca się z samych zer, długość, no hmmm, odpowiednia(!) :D , ale to już osobny problem (w sumie to się chyba z jakiejś logarytmicznej zależności da wyliczyć)....
Jak zrealizować dzielenie dwóch liczb binarnych stałoprzecinkowych w VHDL? Byłbym wdzięczny za wszelkie linki lub tytuły książek w których mógłbym coś znaleźć na temat programowej realizacji operacji arytmetycznych (dodawanie, odejmowanie, mnożenie, dzielenie, potęgowanie, pierwiastkowanie)
Witaj, Z materiałów, które zostały mi z zajęć na studiach: "Inną metodą konwersji Qm na liczbę dziesiętną jest przedstawienie liczby binarnej w postaci liczby całkowitej ze znakiem i podzielenie jej przez 2^m. np. w notacji Q7 0 100 1001 = 73(10) / 2^7 = 0,5703125 w odwrotnym przypadku mnożymy liczbę którą chcemy przekonwertowań na standard Qm przez...
W oryginale podałem 0 xb 11111000, co jest oczywistym błędem, bo miał być binarny, ale zakładam, że się tego domyśliłeś a kompilator nie przepuścił :) Ta konstrukcja niczego nie ustawia tylko zeruje 3 najmłodsze bity, ponieważ jest to mnożenie logiczne z ustawionym już wcześniej ADMUX za pomocą znaku & Dodano po 3 http://www.java2s.com/Tutorial/C/0100__O...
mam pytanie co do komputerów liczących w systemie dziesiętnym takich jak ENIAC. One dzieliły sygnał na 9 części np. natężenie aby wyszczególnić kolejne cyfry czy była jakaś inna logika dziesiętna? Cześć, ENIAC (Electronic Numerical Integrator and Computer) był jednym z pierwszych komputerów elektronicznych i wykorzystywał dziesiętny system liczbowy...
Procesor nie operuje na liczbach decymalnych, tylko na binarnych. Instrukcja DAA wykorzystywana przy liczbach w kodzie BCD (Binary Coded Decimal), ale dalej są to liczby binarne. Nie prościej to zwykłym kodzie binarnym robić, tylko akurat w BCD? Czy to po prostu taki wymóg konieczny?
Witam, Potrzebuję zbudować mnożarkę dwóch wektorów o długości 512-bit każdy. Posiadam układ Spartan3E 500 dysponujący 20 mnozarkami 18x18 .Zrealizowałem mnożenie dwóch licz binarnych o długości 512 bit-ów - mnożenie wg. algorytmu "shift-add". W najgorszym wypadku mnożenie trwa 512 cykli zegara. Naturalnie architektóra ta została syntezowana do rejestrów...
dodawanie odejmowanie mnożenie dzielenie moduł itp wszystkie działania są takie same we wszystkich systemach liczbowych.. na komputerze pojawiają się nam cyferki dziesiętne gdyż takiego syst. uczyliśmy się w szkole.. na komputerze wszystkie operacje są wykonywane w kodzie dwójkowym(binarnym) a wyniki są takie same i w dziesiętnym.. przykładowy przykład:...
Przypominam, że komputery liczą w systemie binarnym! Implementacja tego była by tylko trochę trudniejsza (chyba, że ktoś myśli jak maszyna, do czego się konsekwentnie zbliżam :D ) niż systemu dziesiętnego, a wydajność wielokrotnie wyższa. Można by wtedy w prosty sposób zrobić mnożenie i dzielenie (binarne jest prostsze!), gdzieś na elektrodzi był chyba...
to zależy od dokładności na jakiej zależy trzeba mnożyć wszystkie miejsca po przecinku
Gdzie moge znaleźć dużo teorii na temat układów cyfrowych. Od samego początku, kod dwujkowy dodawanie, mnożenie, bramki and, or itd. aż do omówienia układów TTL i innych :D
Tak myślałem, że należy cały port zapisać do jednej zmiennej, tylko nie byłem pewny czy po zapisaniu do zmiennej liczby binarnej mogę korzystać z niej jako dziesiętna. Jeszcze pytanko z tym mnożeniem, jeżeli po pomnożeniu wartość liczby się nie zmieni, to po co ją w ogóle mnożymy? :D Chyba nie do końca dokładnie przeczytałeś posty wyżej. McMonster...
Zapominasz, że w tej pamięci nie tylko te "floaty" siedzą (ściślej - ich obsługa) ale również obsługa uarta oraz ADC. To że masz 3 zmienne typu float o niczym nie przesądza. Przy jednej miałbyś podobnie. Oprócz tego procedura zamiany float-->str - też zajmuje swoje. W twoim przypadku wystarczyłoby abyś mnożony wynik, zapisał do liczby typu int. sprintf...
mam pytanie do tego algorytmu, bo nie moge jednej rzeczy dla niego wymyśleć... co zobić, żeby prawidłowo robił bin2bcd ale liczby 16 bitowej dla której 4 lub 8 ostatnich bitów jest traktowane jako liczby po przecinku... przecież nie bede tego robić tak jak jest a potem dzielić tej liczby bcd przez 16 albo 256, bo wtedy traci to sens, żeby nie dzielić...
Dzięki za odpowiedź! Chodzi bardziej o to, że mam dwa rejestry, w nich w postaci U2 zakodowaną liczbę, mam też funkcję do konwersji na normalny kod binarny. Chciałem wykonać mnożenie dwóch rejestrów, przez inne dwa i wynik, zapisując do czterech rejestrów, przesłać do LCD do wyświetlenia. No chyba, że czegoś nie zrozumiałem w Twoim poście, co jest bardzo...
Podstawą jest Pełny 1 bitowy sumator (FullAdder): https://obrazki.elektroda.pl/3093507700_... Z niego można zbudować sumator wielobitowy łącząc w szeregu wiele jednostek: https://obrazki.elektroda.pl/5294488100_... W rzeczywistych układach stosuje się inne rozwiązania bo powyższy jest tym wolniejszy im więcej bitów...
Tu Zamiana z dziesiętnego na binarny liczby 23: 23 : 2 = 11 reszta z dzielenia = 1 11 : 2 = 5 reszta = 1 5 : 2 = 2 reszta = 1 2 : 2 = 1 reszta = 0 Odczytujemy liczbę od tylu: 10111 Zamiana z bin na dec liczby 10011<zaczynamy od konca, ale mozna tez od poczatku>: 1*2^0 + 1*2^1 + 0*2^2 + 0*2^3 + 1*2^4 = 1+2+0+0+16 = 19 Z dec->hex i z hex->dec...
w zadaniu mam ze maja byc typy double. nie rozumiem tego zapisu (tab[i]-'0') i dlaczego wynik z poczatku mam mnozyc razy dwa?
Aby to zrozumieć trzeba poczytać o takim panu na b co opisał zasady algebry liczb binarnych jak przesuwasz o 1 miejsce w lewo to tak jak byś mnożył razy 2 a w prawo to dzielisz przez 2 aby zrozumieć działanie programu należy wpisać sobie 2 liczby o obserwować co sie z nimi dzieje najłatwiej zrobić to w symulatorze avr studio oczywiście program trzeba...
Ok, można podać jakieś cóś na nogę AREF, co będzie miało stabilną wartość w woltach, i może być nawet < 5V, co troszeczkę poprawi rozdzielczość, ale jak napięcie na LM-e je przekroczy, to nie poczytamy o niczym ciekawym z przetwornika A/D... Stąd w sumie mój pomysł x10, co wcale nie jest sztywne, można i x4, co nawet w świecie binarnym łatwiej liczyć...
Mam spore doswiadczenie w projektowaniu układów cyfrowych, ale o czymś takim nie słyszałem. I przyznam, że nie rozumiem problemu. Bo co to właściwie znaczy "jednobitowy" i ma mnożyć ten bit przez 6 ?! To jakaś bzdura. Natomiast przy mnożeniu liczby (iluś-tam bitowej) przez 6 można skorzystać z zależności, że: y = 6 * a = 4 * a + 2 * a A mnożenie przez...
Zaczynasz wprowadzanie znaków od najstarszych pozycji, nie? Jeśli zaczniesz od 0, to będziesz miał (na starcie) liczba = 0 liczba = 0*2 + '0' - '0' // kody ascii objaśnił Łuk_F czyli liczba się nie zmieni, ciągle będzie wartość 0. Gdy trafisz na pierwszą jedynkę dostaniesz liczba = 0*2 + '1' - '0' czyli w liczbie pojawi się 1. Kolejna jedynka liczba...
Oczywiście że można użyć Atmega8 bo kosztuje praktycznie tyle samo, a wszystkie elementy w wersji przewlekanej można upchać na płytce wielkości wyświetlacza. I pozbywamy się błędu pomiarowego, miniaturyzacji. Ten miernik to taka ciekawostka, tak jak napisałem, co można upchać w jeden mały Attiny13. Po prostu mowę mi odbierało gdy widziałem kolejną lampkę...
Najlepiej będzie pozakać to na przykładzie: - zamiana liczby 2527,78125 (dec) na hex Cześć całkowitą 2527 dzielisz przez 16 (i zapisujesz reszty z dzielenia) tak długo aż otrzymasz wynik dzielenia równy zero: 2527 : 16 = 157 reszta 15 czyli F \uparrow 157 : 16 = 9 reszta 13 czyli D \uparrow 9 : 16 = 0 reszta 9 \uparrow Cześć ułamkową 0,78125 mnożysz...
To widze że tkwimy w tym samym punkcie, ja na pierwszą potrzebe chce użyć generatora 80MHz (mam taki) i układu 74lvc08 (do konwersji na 3v3). Widziałem ze dallas ma scalone programowalne generatory, jeśli potrzebujesz dla siebie to można zamówić sample. Generalnie z układami logicznymi pracującymi przy takij częstotliwości jest problem. Widziałem w...
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...
mnożenie liczba binarny wyszukiwać binarny binarny algorytm mnożenie
czujnik vario makro zmiana format schemat instalacji elektrycznej piaggio
kontrolka wózek widłowy wózek widłowy linde
Schemat centrali CAME ZA3 - automatyka bram Immergas Eolo Star 23 kW - świeci czerwona lampka