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_...
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...
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...
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 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.
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...
Witam wszystkich :!: , pewnie sporo osób z forum elektroda ma kody binarne w małym paluszku więc stąd prośba: mógłby ktoś łopatologicznie przedstawić metody mnożenia kodów binarnych np Metoda Booth'a (wszystko oprócz standardowego mnożenia). Jestem studentem 1roku elektrotechniki na PRz i jakie mamy wykłady z informatyki woła o pomstę do nieba, nic...
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 :)
Witam, mam problem. Próbuję zaprojektować układ synchroniczny, który mnoży dowolną liczbę binarną przez liczbę 3. Wejście ma być podawane z rejestru nr 1, a wynik zapisywany do rejestru nr 2 (rejestry 8-bitowe jednokierunkowe). Wiem jedynie, że liczbę muszę rozbić na x << 1 + x, ale nie do końca wiem, jak to wrzucić na schemat układu na kartce....
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
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...
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...
Chyba żartujesz ;) Po prostu mnożysz (lud dodajesz dla ustawienia) binarnie przez właściwą maskę :) (po podstawy Algebry Boole'a zapraszam na wikipedię) set:=set or $01; clear:=clear and $FE;
Czy ktoś mogłby zaproponować implementację mnożenia liczb binarnych w VHDLu? Bardzo proszę. Bardzo mi na tym zależy. Byłbym tez bardzo wdzięczny za omowienie jakichs algorytmów mnożenia liczb binarnych bez znaku. http://www.elektroda.pl/rtvforum/viewtop... nie rob tak! candle
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++)...
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
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 -----...
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.
Hey !! hehe nieźle Panowie :) Co do kalkulatora to jakoś na pierwszy rzut, jako człowiek, który nie zna się w ogóle na elektronice, to dosyć zawiły problem, zacznij od jakichś dzwonków, alarmów, liczników itp. :) No ale poważnie, tak jak Xitami pisał jest duuużo dróg do zrealizowania tego tematu, od układów logicznych do procków (tych małych '51 i dużych...
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ą...
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)
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...
Operacjami bitowymi - mnożenie logiczne przez maskę się przyda.
to zależy od dokładności na jakiej zależy trzeba mnożyć wszystkie miejsca po przecinku
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...
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...
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...
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...
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...
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...
Niektóre kompilatory umożliwiają zastosowanie acc, ale już mniejsza o to. Program jest bardzo prosty i nie bardzo jest tu co wyjaśniać. To jest jak mnożenie dziesiętne: 23 * 5: 3 * 5 = 15 2 * 5 = 10 Zapisujesz o tak: _15 10_ Dodajesz zera: 015 100 I dodajesz: 115 Tak samo działa ten program, tylko że binarnie.
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ć...
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...
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?
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 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...
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
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...
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...
No już ci napisałem - arytmetyka stałopozycyjna. 21/2=10r1. 1*10/2=5 - masz pierwszą cyfrę po przecinku. Możesz zrobić r*100 albo 1000. Jak z tego wyjdzie reszta to mnożysz dalej i dzielisz otrzymując kolejne miejsca dziesiętne lub binarne.
Cześć. Chciałbym zrobić układ do mnożenia dwóch liczb 3-bitowych za pomocą bramek logicznych. Z tego względu że na wyjściu jest więcej jak jedna kombinacja, to nie wiem, jak sobie z tym poradzić za pomocą tablic Karnaugha. Ktoś pomoże i mi poradzi oraz powie, jaki jest algorytm projektowania dla tego zagadnienia? Cześć! Projektowanie układu do mnożenia...
Zastanawiam się po co. Tak samo łatwo wyświetlić w postaci binarnej. AVR-GCC obsłuży operacje mnożenia na liczbach 128-bit?
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:...
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...
Już Ci Acula odpoweidzał Częś ułamkową (po przecinku) Mnożysz ułamek przez 2 jeżeli iloczyn mniejszy od 1 zapisujesz 0 (w zapisie binarnym) jezeli większy od 1 zapisujesz 1 odrzucasz część całkowitą i powtarzasz poprzednie kroki (aż uzyskasz 0 lub wystarczy Ci odwzorowanie z daną dokładnością)
Do tego zagadnienia musi kolega zajrzeć do algebry Boole'a zapisać sobie liczby binarnie podpisać pod sobą i zrobić tak jak normalne mnożenie w słupku tyle że na 0 i 1 ...
Wczytujesz stringa, analizujesz znak po znaku. od '0'-'9' odejmujesz '0' i dostajesz liczbę, a od 'A'-'F' odejmujesz 'A' dodajesz 10 i dostajesz liczbę. To się nadaje w sam raz na funkcję HexCharToInt ;) (oczywiście do napisania). Potem identycznie jak w pozostałych kodach - potęga, mnożenie, dodawanie itd..
Jeśli chcesz to zrobić bez instrukcji przypisania, to używasz tzw. transformacji "worker-wrapper" (po polsku pracodawca-pracownik? :P) Dodatkowym plusem jest fakt, że tak wyrażona rekursja jest rekursją ogonową (wywołanie rekurencyjne jest ostatnią operacją wykonywaną w funkcji, stąd rekursję prosto da się zamienić na iterację). Oczywiście kod napisany...
Wszelkich ustawień dokonuje się tu poprzez terminal RS-232. Mnożnik to parametr P6, więc jego ustawienie sprowadza się do wysłania ciągu "P6 n" gdzie n to żądana nastawa. Jeżeli ma być mnożenie x1, to n=256 (binarnie 00000001,00000000). Jeżeli chcemy, aby z każdym impulsem "krok" silnik obracał się o 6,5 "kroków", wystarczy wpisać "P6 1664" (6,5*256=1664)....
Kalkulator z zegarem. Kalkulator 4-działaniowy (dodawane, odejmowanie, mnożenie i dzielenie), a gdy nic nie liczysz, to wyświetla godzinę i datę. Albo kalkulator do przeliczania liczb w różnych systemach (binarnym, dziesiętnym, szesnastkowym...)
czy jest możliwe zbudowanie na samych przekaźnikach kalkulatora wykonującego cztery podstawowe działania (dodaj, odejmij, pomnóż, podziel). Ile potrzeba przekaźników, żeby obsługiwał pięciocyfrowy wynik? Hahaha, no nieźle. czy jest możliwe zbudowanie na samych przekaźnikach kalkulatora wykonującego cztery podstawowe działania (dodaj, odejmij, pomnóż,...
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...
A jak mozna podzielic liczbe 12345/65536 = 0,18765.... mnie by tylko interesowlo np 0,187?? Bo jak dam dzielenie binarne tych liczn to wyjdzie mi zero!!
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...
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...
Wersja "pro" :) int szybkie_mnozenie(int a, int b) { int c=0; while(b) { if(b%2) c+=a; a*=2; b/=2; } return (c); } Sprawa jest elementarna. Wiadomo, że mnożenie liczb kosztuje sporo czasu procesora. Zatem ktoś wymyślił algorytm zamieniający "kosztowne" zwykłe mnożenie na równoważny zbiór sumowań i mnożen przez 2, co dla dowolnego procesora jest drobiazgiem...
Ok spróbujmy... Wiesz zapewne że kod binarny składa się z "0" i "1". Wiec tak zapisz sobie pokolei: W dwojkowym masz możliwość zapisania tylko liczby 2 i jej potęgi (od 0 do n). W pierszym wierszu masz rozpisane pokolei potęgi liczby dwa (przeliczone na system dziesiętny) W drugim wierszu mas to samo w postaci 2^n w 3 wierszu masz zapisane która potęga...
Ale tablica potrzebna do wyznaczenia wartości elementów ciągu ma rozmiar tylko taki, który element ciągu chcesz poznać. Jak chcesz 50-ty, to potrzeba tablicy 50-elementowej typu long long. Co więcej - po wyznaczeniu wartości elementu ciągu można śmiało ją usunąć. W algorytmie sita nie ma możliwości efektywnego skrócenia wielkości tablicy o więcej, niż...
wyzej podalem w jednym z moich postow |tysiace setki| |dziesiatki jednosci|, |1 lub 2 miejsca po przecinku| Czyli dzielac to na bajty mamy 3 bajty z czego 2 na calosci i 1 na miejsce po przecinku Czyli maksymalna liczba w zapisie dziesiętnym to:9999,9 a w zapisie liczb całkowitych to 99999 czyli w zapisie binarnym zmieści się na w 3 bajtach. Co do...
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),...
Tak przeważnie adres maski jest to 255.255.255.0 W tym przypadku jeżeli w treści zadania będziesz chciał się podłączyć do sieci o adresie np: 192.168.100.38 To adres podsieci będzie następujący: 192.168.100.0 I w przypadku pisania egzaminu na komputerze 11, należy wprowadzić adres 192.168.100.11 . Bierze się to z tego, że adres podsieci jest mnożeniem...
Ośemkowego się za bardzo nie stosuje, binarne do programowania niskopoziomowego głównie, ale nie tylko bo przecież 01 to ogólna reprezentacja danych. Szesnastkowe się lepiej czyta niż binarne. 375 dec = 5*8*8+6*8+7, dla ósemkowego waga kolejnej liczby to 8^n-1, gdzie n to jest nr liczby, dla 16tkowego 16^(n-1) dla binarnego 2^(n-1), czyli dla pierwszej...
Hmm. Co oznacza np. 1<<0? Również dopiero poznaję c i do tej pory myślałem że >> i << oznacza przesuwanie liczby zawartej w zmiennej(mnożenie i dzielenie przez dwa). Czy dobrze rozumiem pierwszy przykład? (1<<2)|(1<<1) == 00000100 | 00000010 == 00000110 ?? Pierwsza liczba binarna to 1 pomnożone przez 4, a druga pomnożona...
... jednak w przypadku avr'ów warto zauważyć, że brak jest instrukcji przesuwania w lewo o dowolną ilość bitów, przez co przesuwanie o zmienną zostaje przekształcone w pętlę co wydłuża wykonywanie A mnożyć przez 2,4,8,16,32,64,128... potrafisz ? mówi coś instrukcja mul ...Problem właśnie w tym że algebra liczb binarnych w przypadku wielu programistów...
Co do możliwości zrobienia na bramkach, to takie coś jest elementem układu mnożenia liczb metodą [url=https://en.wikipedia.org/wiki/Walla... tree. Prościej mógłby być zrobiony układ działający sekwencyjnie: generator sygnału zegarowego podaje impulsy na CD4017 z wyjściami połączonymi poprzez oporniki z przełącznikami łączącymi do masy, zasilany...
Czy nie ma szybszych alglorytmów? Oczywiście, że są. Wykorzystaj algorytm mnożenia i dzielenia pisemnego. Dzięki temu znacznie ograniczysz ilość dodawań czy odejmowań. Na przykład 1234 * 5678 zrobione metodą powyższą to 1234 dodawania (zakładam, że program jest chytry i sprawdza na początek która liczba jest mniejsza i ją bierze jako licznik pętli)....
Witam Na czwartek muszę przygotować listingi programów napisanych w asemblerze które wykonają poniższe działania: 1. Dane są liczby: A=0F1h, B=00011111b. Obliczyć binarnie A+B, A-B, B-A. Podać wynik w postaci binarnej i szesnastkowej. 2. Napisać program mnożenia x4 liczby umieszczonej w rejestrze R7 bez użycia instrukcji mul ab. 3. Napisać program...
Zauważ, że przy podnoszeniu do potęgi ilość bitów rośnie w przybliżeniu z wykładnikiem potęgi: 2 -> 15*15=225 -> 8 bitów 3 -> 15^3=3375 -> 12 bitów czyli układ się rozbudowuje. Budowa takiego układu na pojedyńczych bramkach jest raczej nieopłacalne raczej trzeba stosować układy większej skali integeracji i przyjąc jakąś metodę mnożenia liczby przez...
Witam. Przeszukuję sieć w celu znalezienia skutecznego algorytmu mnożenia 16 bitów (16x16) z wynikiem 32 bitowym. Oto przykład z sieci (jakich wiele): mpy16u: clr m16u3 ;clear 2 highest bytes of result clr m16u2 ldi mcnt16u,16 ;init loop counter lsr mp16uH ror mp16uL m16u_1: brcc noad8 ;if bit 0 of multiplier set add m16u2,mc16uL ;add multiplicand...
Wow. Byłoby super, gdyby ten Urmet 1052/34 zadziałał i jestem w stanie zaryzykować :) Właśnie się wczytuję w jego instrukcję i - jako laik - mam do Was fachowców dwa pytania: 1. Chyba zrozumiałem zasadę konfiguracji adresu tymi dipswitchami (konfigurujemy binarnie, z tego jest wartość decymalna, która jest potem mnożona przez 4, odejmowane 3 i to jest...
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...
Czyli liczbę z dziesiętnej muszę prze konwertować na binarna (Dec->Bin), a następnie podana przeze mnie funkcją o błędnej nazwie Dec2Bcd, binarną na Bcd? Z tego co rozumiem: liczbę np 13 rozkładam na dziesiątki i jedności: 1x10^1 + 3*10^0, następnie zamieniam 1 i 3 na postać binarną (puste miejsca uzupełniam zerami, aż do 4 bitów) 1= 0001 3= 0011...
Jeśli na wejściu ma być 1Hz, to do przełączania AM/PM trzeba to podzielić przez 86400, i ostatni podział musi być przez 2, żeby czasy '0' i '1' były równe. 4059 może zliczać do 21327, więc licznik binarny co najmniej 3-bitowy. 4059 może sterować TTL, ale jeśli wygodnie jest zastosować np. zasilanie 12V, to wypada użyć licznika binarnego z serii CMOS...
Własciwie to racja :) zadania ponizej: Zad. 1. Zaprojektować i zasymulować działanie układu sumująco – mnożącego. Na wejście podawane są dwie liczby 3 bitowe oraz sygnał mówiący o operacji arytmetycznej (0 – sumowania; 1 – mnożenia). Na wyjściu pojawia się wynik operacji. Zad. 2. Zaprojktować konwerter kodu: a)Binarnego na „2”...
Coś nie gra: raz piszesz, że: linia CS SSD1289 jest podłączona do FMC_A0(PF0) a za chwilę: LCD_CS --> NE1(PD7) Domyślam się, że RS jest podpięte pod A0? Zakładając, że RS jest podpięte np. pod A16 -> wpisz sobie w kalkulatorze binarnie liczbę 0b1+15zer -> szesnastkowo to będzie 0x10000. Mnożysz x2 (pamięć 16bitowa) i masz 0x20000. Otrzymany offset dodajesz...
Warto jeszcze uwzględnić problem precyzji - 32 bitowy int ma 32 bity, a 32-bitowy float - tylko 24; z kolei sprzętowe obliczenia na binary64 mają z popularnych mikroprocesorów na razie tylko nowsze wersje Cortex-M7. Jeśli mamy algorytm ze zmiennymi o dużej dynamice i jednostkę zmiennopozycyjną - to oczywiście warto użyć float. Jeśli nie mamy jednostki...
Właśnie o te układy arytmetyki się boję najbardziej :wink: Póki co rozwiązałem to w ten sposób, że jeżeli mam współczynnik np. 0,324 to mnożę sygnał najpierw przez 324 a poźniej dzielę przez 1000 i wydaje się działać :) W ten sposób jest poźniej łatwiej nawet zmieniać wspólczynniki filtru, bo wpisuję sobie wartości dziesiętne jak leci do kodu, a nie...
jeśli ktoś zna mnożenie pisemne to z tym zagadnieniem niebędzie miał problemu.. 2 liczby przedstawiamy jako tablice zmiennych typu dword np x i y.. wynik tak samo (do tablicy z) tyle że rozmiar takiej tablicy powinien być odpowiednio większy.. zerujemy zmienną C (przeniesienie-> powinno być typu qword).. do z[0] wpisujemy dolne 32 bity iloczynu x[0]...
Co myślisz o tym żeby napić się kawy albo przewietrzyć przed myśleniem hahahaha :D Musisz sobie koniecznie wydrukować taka tabelkę jaka wartość mieści się w zapisie binarnym w konkretnej ilości "jedynek" Od razu zauważyłbyś że w ośmiu bitach zmieści się wartość 256..to za dużo więc bierzesz siedem bitów i ..bingo 128! Tak więc Maxbit to 7...pójdźmy...
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....
Pierwszy problem: Zdecydowana większość operacji na liczbach zmiennoprzecinkowych wprowadzi Ci błąd, który będzie się kumulował. Mnożenie przez 10 zawsze będzie powodować rozszerzenie mantysy (w sensie odległości pomiędzy pierwszą a ostatnią jedynką) - w którymś momencie musi pojawić się cięcie (utrata bitów). Pierwszy pomysł, to dodać z samego początku...
(at)Damian7546 obejrzyj jak zadziała to: Wpisuje do textboxa "textRej" wartość 10, i w labelu otrzymuje 16 .. a w hex to chyba A , co nie ? Widzę że nie rozumiesz jednej rzeczy, w bajcie liczba zapisana w postaci kodu. Możesz używać tą liczbę do dodawania, odejmowania, mnożenia oraz innych operacji, natomiast nie możesz jej zobaczyć bo nie ma jak....
po jakimś czasie nad kodem doczytałem się, że konwencję 'liczby' masz jako znaki, jedno z trudniejszych do obliczeń (a tradycyjnie konwersja jest serią mnożeń rzez 10). Bez wódki tego nie wyobrażę sobie :) jak mawiali starożytni Rosjanie. Gdybym ja robił, wyznaczył bym sobie trzymanie liczby binarnie, w rejestrze, skonwertował do/z (nie ukrywam, mógłbym...
Masz napisać procedury mnożenia liczb: 1 bajtowej przez 1 bajtową (8x8) wynik będzie 16 bitowy (2 bajty) 2 bajtowej przez 1 bajtową (16x8) wynik będzie 24 bitowy 3 bajty 2 bajtowej przez 2 bajtową (16x16) wynik będzie 32 bitowy (4 bajty) Procedura przebiega tak w kodzie naturalnym binarnym: 1. Przygotowujesz rejestr wyniku o długości równej sumie ilości...
Problem dotyczy AT89C52 z czujnikiem SHT11 Piszę program w Proview Mam do zaprogramowania skaplikowane mnożenie np RH=c1+c2*PDLB+c3*PDLB2 =-4 +0,0405*2353 –2,8*10-6*(2353)2= 75,79% npObliczmy wilgotność powietrza: Informacja z czujnika : 0000 1001 0011 0001 Postać dziesiętna liczby binarnej (PDLB)= 2353 RH=c1+c2*PDLB+c3*PDLB2 =-4 +0,0405*2353...
Przeprasza, to ja się tym razem zagmatwałem. Mnożenie faktycznie niepotrzebne. Byłoby potrzebne gdybyśmy wczytywali w kolejności od najbardziej do najmniej znaczącej pozycji. Przecież ten zapis " (double)(tab Zasugerowałem się tym że autor w swoim kodzie wyżej potraktował tablicę jako tablicę wartości typu char:
do Eagle : U mnie wartości zmiennych są identycznie w postaci binarnej. do Szymona Tarnowskiego : Odjęcie tych wartości nie jest równe 0 (a powinno), więc tak jak napisałeś podchodzi to pod ten problem standardowy. Wynikiem odejmowania jest: 2,71050543121376E-20 Pozostaje chyba tylko po prostu mieć to na uwadze podczas pisania kodu. Moje podsumowanie:...
Witam wszystkich mam problem z przeliczenie liczby dziesiętnej na binarną i szesnastkową (hex), problem jest dość nietypowy ponieważ mają to być liczby ułamkowe (np 0,25; 84,345) oraz całkowite(3; 66; 55), całkowite OK przeliczam cudownie ale ułamkowe nie bardzo mi idą nie wiem czemu przecież to się tylko mnoży przez 2 ale zawsze dochodzę do takiego...
W załączniku program-interfejs do prezentacji danych pomiarowych na porcie TCP (LabView nie łączy się z urządzeniem na USB tylko z tym portem), i program dla mikrokontrolera. Pomiar pojemności to po prostu mnożenie czasu rozładowania (w godzinach) przez prąd rozładowania (stały). Nie widzę potrzeby pomiaru parametrów ładowania - nie wiem, jakie ciekawe...
Edit15 -> Text = IntToStr( StrToInt( Edit30->Text + // dodawanie textu to rozumiem... konkatencja Edit31->Text * // ale mnożenie wyrazu przez liczbe? ( StrToInt(Edit9->Text) / ( StrToInt(Edit8->Text) + // tu chyba powinien być znak odejmowania StrToInt(Edit9->Text) ) ) ) ) sprubój:...
Witam ... Z tego co mi wiadomo, to we wszystkich rodzajach czestościomierzy zalecane jest źródło sygnału najlepiej sinusoidalne lub prostokątne 50% (częstotliwości wzorcowej). To właśnie dlatego wszystkie dokładne generatory DOCXO mają wyjście sinusoidalne. Czy się mylę? Może jakiś układ scalony PLL, bez zewnętrznych elementów, może zająć się mnożeniem...
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...
Będzie tam po prostu wartość. Tak jak mówię to tylko sprawa interpretacji. Powiedzmy że pomnożysz 2 i -5. Wyjdzie -10. W zapisie binarnym jest to 10110. Ale jak byś nie wiedział że jest to wartość ujemna to jak byś to rozkodował? Pewnie tak jak na lekcjach informatyki :D (o ile to jest w szkołach teraz) I by Ci wyszło że to jest dziesiętnie 22. Czyli...
Witam, potrzebuję pomocy z zadaniem jakie dostałem na laboratoriach z architektury komputerowej. Treść : Zaprojektować układ na brakach NAND, 4-wejściowy; podajemy lizczbę w zapisie binarnym. Wynik podaje iloczyn (całkowity) po przemnożeniu przez 2/3 i resztę. Proszę o pomoc bo kompletnie nie wiem jak się do tego zabrać. Czy o to chodziło? Jak mam to...
0 jakiegokolwiek wytłumaczenia, wprowadzenia. Zróbcie mi kalkulator w Asemblerze działający na MSP 430 i tyle. Gdzie to takie studia ? Bo coś mi się nie chce wierzyć w Twoją wersję wydarzeń. Dlaczego każda operacja( DODAWANIE, ODEJMOWANIE MNOŻENIE ) ma w swoim bloku skok do DZIELENI?? Czyj to kod jeśli pytasz o takie rzeczy? Bo na pewno nie Twój. Jeśli...
... jak zrobic te 4 mlodsze bity r-2r. Piszesz o mnozeniu 2^4 (16), czyli zastosowac jakis mnoznik czy moze bramki w jakiejs konfiguracji???????????????????? Żadnych bramek. Jeszcze raz: Z 7400 mamy 4-bitową liczbę binarną. Skoro chcemy ją podać na wejście 8-bitowego przetwornika C/A, to najrozsądniej jest podać ją na jego 4 najstarsze bity. Wtedy...
Co do drugiej części - wszystko byłoby ok, ale w liczbach binarnych moga znaleźć się są jeszcze inne ciągi bitów niż 0000 ... 1001 - i co wtedy? W tej chwili tak naprawdę wypisujesz reprezentację heksadecymalną liczby, oprócz tego, że pomijasz cyfry A-F. Jeśli chcesz wypisać reprezentację dziesiętną, to musisz przeprowadzić konwersję. Istnieje [url=http://www.engr.udayton.edu/faculty...
mnożenie liczba binarny wyszukiwać binarny binarny algorytm mnożenie
h2testw karta podgląd rejestrator turbinka junkers
nawadnianie trawnika virago xv535
Możliwości podłączenia do Sony TA-F690ES ADAPTOR Zamienniki tranzystora BT40T60: IRG4PC40W, STGP40V60F