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...
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óż,...
Jak długo trwa mnożenie liczb całkowitych na komputerze? Zależy to od architektury procesora, rozmiaru liczb i użytego algorytmu. Na nowoczesnych procesorach zajmuje to 1-4 cykle zegara.
Napisać program wykonujący przynajmniej jedno z działań (dodawanie, odejmowanie, mnożenie lub dzielenie) na liczbach w systemie dwójkowym. Użyj do reprezentacji liczb binarnych tablic długości 10. Użytkownik podaje liczby po uruchomieniu programu (liczby maksymalnie 10-cyfrowe). Program wypisuje te liczby i wynik działania. Prosze o pomoc!!!
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ę...
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...
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...
inny przykład - z szesnastkowego na 36-tkowy we=bf3 wy=000 ostatnia cyfra we (3) * waga (16^0), w b36 = 3, dodajemy do wy wy = 003 kolejna cyfra we (f) * waga (16^1), w b36=6O, to jest litera o, nie zero, dodajemy do wy wy=06R kolejna cyfra (b) * waga(16^2), w b36=268, dodajemy do wy wy = 2CZ procedura mnożenia w dowolnej bazie może być dość prosta,...
witam. otoz mam taki problem. zmagam sie z takim programem: mnozenie 2 liczb binarnych 16-bitowych (bez uzycia MUL i IMUL).po wykonaniu program ma wypisac na ekranie wynik w postaci dziesietnej. musze wykorzystac rejestry 32 bitowe i tablice. oto kod ktory juz mam ale stanalem w martwym punkcie: dane SEGMENT napis db 'Prosze podac liczbe 1 i nacisnac...
Witam Mozna by prosic o pomoc przy poprawieniu programu. Nie wiem czemu nie chce liczyc dla liczb ujemnych #include<stdio.h> #include<stdlib.h> void printbits(int x); main() { int x; printf("Podaj liczbe calkowita x: "); scanf("%i",&x); printbits(x); system("PAUSE");...
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 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
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 :)
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 -----...
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....
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...
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...
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++)...
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...
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...
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)
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ć...
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...
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 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_...
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...
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...
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ą...
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...
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...
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
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 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...
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:...
to zależy od dokładności na jakiej zależy trzeba mnożyć wszystkie miejsca po przecinku
Przesuwanie liczby oznacza mnożenie lub dzielenia (w zależności od kierunku przesuwania) przez 2. Poniewaź liczba 10 nie ma rozwinięcia binarnego, przesuwanie nie może być zastosowane. W każdym przypadku (dzielenia przez liczbę 16-bitową czy kilka dzieleń przez liczbę 8-bitową) wystąpi dzielenie. Procesor AVR nie ma istrukcji dzielenia więc należy wykonać...
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...
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...
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...
Wielkie dzięki:) Jak sam próbowałem dojść do odpowiedzi, to zacząłem odwracać konwersje z bin na dec i też zacząłem mnożyć przez 2, ale na odejmowanie 1 bym nie wpadł:)
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...
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...
Witam, na przyszły tydzień mam przygotować kilka projektów z układów iteracyjnych. Całkiem przyjemne rzeczy...gdyby nie dwa podpunkty; mam zaprojektować układy: mnożący i dzielący 8 bitową liczbę binarną (zapewne w systemie dwójkowym) przez 5. Układ ma składać się z 8 bloków, o 1 wejściu, 1 wyjściu i max 3 przeniesieniach każdy. W każdym bloku mam do...
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...)
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...
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...
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...
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, 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...
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ą)
... 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...
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..
liczb binarnych mnożenie liczb sumator liczb binarnych
tracer highlander silent schemat lc320 lampy ksenony
mikrokomputer cobra1 mikrokomputer cobra1
Pojemność baterii do podtrzymania zasilania domu 2000W przez 8 godzin Kompatybilność karty Gigabyte HD 7770 1GB z płytą główną