sposobów jest multum. wszystkie z wymienionych przez ciebie operacji są bardzo dobrze opisane na praktycznie każdej stronie zajmującej się układami programowalnymi. te zagadnienia możesz szukać na stronach uczelnianych (typowe zagadanienie akademickie :)) ze swej strony polecam zajżeć w to [url=http://www.csee.umbc.edu/help/VHDL/...
Z treści wynika, że chcesz to opędzić DIV AB to 99/98 daje wynik A=1 B=1 a nie B=102 (reszta ale nie podzielona przez 98 Zakładamy,że liczby nie przekraczają 99 to metoda DIV daje w A prawidłową część całkowitą Teraz reszta - pomnóż reszta*2 L=reszta*2 -podziel mianownik /50 M=M/50 ..dlaczego:?::D A=L B=M DIV AB wynik w A setne części nie wiem czy będzie...
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...
while (liczba=0); {wynik=liczba%syste; liczba=liczba/syste; cout<<"wynik wynosi"<<wynik<<endl;... ten fragment nie robi tego co zakładasz, że powinien robić ;), a dokładnie to zawsze wynik będzie wynosił resztę z dzielenie liczby przez system np 12%5=2 oraz 22%5=2, co raczej chyba nie było twoim celem ;)
Kłania się po prostu - najprostsza matematyka ;) masz np liczbę 123 i chcesz wyodrębnić poszczególne cyfry żeby je po kolei wrzucić na wyświetlacz LED 1. dzielisz liczbę 123 przez 100 - resztę z dzielenia odrzucasz i pozostanie ci cyfra odpowiedzialna za setki czyli 1 - prawda ? ;) 2. odejmujesz od liczby 123 liczbę 100 - bo wyżej już wykonywałeś dzielenie...
mod to nie funkcja tylko działanie matematyczne takie jak "+" czy "-" wynikiem mod jest reszta z dzielenie pierwszej liczby prze drógą np x= 10 mod 3 - wynikiem będzie 1 x= 11 mod 3 - wynikiem będzie 2 x= 12 mod 3 - wynikiem będzie 0 x= 13 mod 3 - wynikiem będize 1 mod jest opisane w pomocy w zakładce "Language Fundamentals" pozdrawiam
Operacje matematyczne i zapisywanie do postaci szesnastkowej. Sensu kodu nie jestem w stanie stwierdzić poza tym, że jest lekko bez sensu... Dzielenie przez liczby i obcinanie części ułamkowej to przecież nic innego jak przesunięcie w prawo. Zaś mnożenie przez 2 to w lewo. To wszystko zmieszane też z przesunięciami. Na koniec brane ostatnie 8 bajtów...
Najpierw poczytaj co to są liczby stałoprzecinkowe i zmiennoprzecinkowe. Takie dzielenie jak tu zostało zaprezentowane jest na liczbach stałoprzecinkowych. W takim przypadku to ty decydujesz gdzie będzie przecinek i czy w ogóle będzie. Po za tym powtórzę się za kol koodpl : po co takie rzeczy rzeźbić w asm?
Możesz spróbować w ten sposób : program sumatrujek; {$APPTYPE CONSOLE} uses SysUtils; var a,b,c:integer; {**************************} function Czy_Liczba_pierwsza( x: integer) : boolean; var idx,licznik : integer; begin if (x=0) or (x=1) then {sprawdzamy czy podana liczba to 1 lub 0}...
Nie moja funkcja - znaleziona gdzies kiedys w necie kiedy piców uzywałem. Ale działała Dodano po 1 Przypomniało mi sie gdzie ja znalazlem - na stronie piclist
Witam Wracam do sprawy kwarca łopatologicznie, najprostszy dzielnik częstotliwości dzieli przez 2, dokładając następny na jego wyjście mamy podział przez 4, dokładając następny mamy podział przez 8...... dokładając piętnasty mamy podział przez 32768. Jeśli na wejściu damy kwarc 32768 to po 15 dzielnikach mamy impulsy sekundowe. Drugim z typowych kwarców...
Możesz pomnożyć resztę przez 1000 a następnie znowu podzielić to przez dzielnik. 1 x 1000 = 1000 1000/16 = 62.5 Czyli otrzymasz 62 i 8 reszty. Można by pomnożyć przez 10000 uzyskując na koniec wynik 625 ale wtedy dzielenie przez większe liczby nie będzie działało bo reszta będzie duża i pomnożona przez 10000 nie zmieści się w 16-tu bitach.
Witam serdecznie wszystkich użytkowników ! Chciałbym zaprezentować działający projekt nad którym spędziłem z grubsza pięć i pół roku, a licząc dokładniej około 6000 godzin. Pewnego majowego dnia roku 2014 poczułem niezrównaną chęć poznania dokładnej zasady działania dość banalnego sprzętu jakim jest kalkulator. Niby jest to proste urządzenie i tak oczywiste,...
nie dokładnie rozumiem kod wolałbym otrzymać kompletny kod Oczywiście, z przyjemnością udostępnię Ci kompletny kod kalkulatora dla Arduino Uno, który nie wykorzystuje wyświetlacza. Zamiast tego wyniki zostaną wysłane do komputera przez port szeregowy. [syntax=cpp] const int buttonPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; // Przyciski dla cyfr 0-9 const...
No to jak rozkminiacie różne programy to ja Wam dam procedurkę dzielenia przez 10 liczby 32 bitowej ponad 2 razy szybszą niż dzielenie [syntax=c]int32_t div10(int32_t number) { int64_t magic = 0x1999999A; return (int32_t) ((magic * number) >> 32); }[/syntax] Możesz sobie łatwo przerobić na dzielenie przez 100 1000 czy cokolwiek innego, lub inną długość...
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...
Da się robić różne cuda, ale po co? Autora nie chciałbym spotkać na drodze (pisze lewo, przesuwa w prawo ;-) ) Wedłu standardu C działanie takie o które pyta jest "implementation-defined" A że się tak zapytam czy przypadkiem nie chodzi o dzielenie przez 2^n? Jeśli tak, to czemu po prostu nie dzielisz przez 2 do odpowiedniej potęgi? Albert
To nie żaden problem. To zwykłe dzielenie stałoprzecinkowe. Jeśli operandami dzielenia są liczby całkowite, to wynik też jest liczbą całkowitą. Jesli chcesz wynik po przecinku, to musisz albo zrzutować któryś z operandów na liczbę rzeczywistą, albo dokonać jego zapisu jako liczbę rzeczywistą (np: 2.0). Zauważ, że w C, w odróżnieniu od Pascala, nie ma...
Musisz dopasować eksperymentalnie. Bardziej "odporne" rozwiązanie to dzielenie "za dużej" liczby przez 2, zamiast odejmowania z w13 Sub Korekta(kol) Application.ScreenUpdating = False If Cells(5, kol) < 0 Then Exit Sub If Cells(19, kol) < Cells(20, kol) Then knyps = 1 If Cells(19, kol) > Cells(21,...
powiedz prowadzacemu zajecia, ze nauka ahdl to czysta strata czasu; a moze lepiej nic nie mow ... :) /.../wydaje mi się że dobrze/.../ troche bledow jest :) 1. variable A S powinno byc zadeklarowane jako 5 bitowe DFF, a obliczane tak samo jak powyzej: S[] = ( 0, S_ab[] ) + ( ... 4.wyj[]=S[] div B"0100"; ahdl nie pozwoli ci na dzielenie niczego poza...
Nie zawsze można ręcznie dodawać ".0", jeśli chciałbyś dzielić zmienne typu int trzeba rzutować i w sumie wystarczy tylko jeden czynnik typu float drugi domyślnie się zrzutuje [syntax=cpp] int a=2518; int b=12512; //w stylu c float test = float(a)/b; //poprawnie ;) float test2=static_cast<float>(a)/b; [/syntax]
Nie wiem co to ma wspólnego z przestrajanym generatorem częstotliwości. Ten mój mnożnik częstotliwości będzie miał Jitter na poziomie kilku % co całkowicie go dyskwalifikuje jak "generator częstotliwości". Generalnie to trzeba zacząć od przetestowania tego co już mamy. Potem się pomyśli nad zwiększeniem zakresu częstotliwości pracy. Jako że nie masz...
Dzielenie zmiennej int16 na dwie mniejsze możesz zrobić tak:[syntax=c]int 16_t zmienna, zmienna1; int8_t mala_zmienna, mala_zmienna1; mala_zmienna = zmienna >> 8; //przesuniecie bitowe skopiuje 8 bitów starszych mala_zmienna1 = zmienna; // skopiuje tylko 8 bitów najmłodszych zmienna1 = (mala_zmienna << 8) + mala_zmienna1; [/syntax]
Ja bym zrobił to tak mam zmienną "a" typu single np potem dziele ją przez 10 a = a / 10 potem przepisuje ją do zmiennej typu np integer np "b" , ktora to automatycznie odcina, zostawia mi tylko liczby całkowite a potem znów mogę ją przepisać do a lub innej a = b zienną typu single można by potraktować tylko jako pomocniczą do obliczeń ale są zapewne...
Domyślam się dlaczego o to pytasz: żeby pokazać że nie da się zsynchronizować :D Przy założeniu że mamy jednego kwarca a chcemy odtwarzać wiele różnych częstotliwości próbkowania no to zgoda, nie da się. Zanim zadałem ostatnie pytanie zrobiłem dokładnie te same obliczenia co Ty, które potwierdziły mi, że na ATmega32 nie da się dokładnie zsynchronizować....
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...
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.
Rozumiem, że przez "obliczyć %" masz na myśli policzenie 100 * x/15360. Żeby było prościej liczysz x/153 - błąd nieduży - przy niskich wartościach niweluje potrzebę korekty zaokrąglania, przy bliskich 100% błąd jest największy i dochodzi do 0.5%. Możesz sobie ręcznie zoptymalizować procedurę dzielenia dla znanego dzielnika - 153 to 0x99 binarnie, a...
Jeżeli znane Ci jest pojęcie stosu, to RPN jest banalnie prosta. Cała zasada obliczania z użyciem RPN: jeżeli dane jest jakieś wyrażenie to: - jeżeli mamy liczbę - wrzucamu ją na stos, jeżeli mamy operator, pobieramy ze stosu tyle liczb, ile potrzeba do wykonania operacji (dwie dla dodawania, mnożenia itp, jedna np. dla pierwiastkowanie, sinyca, czy...
ADMUX=0b10000000; //kanał 7 ADC Zamiast 7 ustawiasz zerowy kanał ADC, a ten pin wykorzystujesz jako wyjście na wyświetlacz przecież... nic dziwnego, że bzdury wychodzą. O co chodzi z tym mnożeniem przez 100 (i dlaczego w przerwaniu, do tego jeszcze na zmiennej globalnej)? Jeśli już to powinno być przez 2 (wtedy wystarczą liczby 8-bitowe) albo (na 16-bitowych)...
Napisze dwa programy Dzielenie wspólne typy REAL L MW 50 // wartość 0-1000 ITD DTR // zmiana na real, najpierw do 32 bitów później dopiero na REAL L 6.250000e+001 // dzielnik /R RND - // zaokrąglenie w dół T LW 30 // zapis do formatu INT 1 program L 0 T QW 8 resetowanie QW 8 CALL FC 83 // biblioteki Standard / TI-S7 / SET bit logic - ustawia dowolną...
A możesz skontaktować się ze mną na gg?? Wytłumaczyłbym Ci trochę, bo tak trudno trafić, co już wiesz a czego jeszcze nie!! Wszystko w zasadzie można wyczytać z pdf-a, opisującego PCF8583, do pobrania ze strony Philipsa. Ogólnie mogę powiedzieć tak: 1. Rok: Właściwe rejestry zegarowe PCF8583 nie przechowują całej liczby oznaczającej rok, a jedynie cyfrę...
Licznik i mianownik transmitancji filtra pomnożyć przez stałą wartość. Najlepiej potęgę 2 (bo jak sobie możesz sprawdzić, w kodzie pojawi się dzielenie, które akurat tutaj sprowadzi się do przesuwania liczby o ileś bitów w prawo). Wyniki zaokrąglić. Sprawdzić charakterystyki filtru po skwantowaniu współczyników. Jeżeli filtr spełnia założenia wyjściowe...
Musisz zastosować sterowanie multipleksowe albo jakiś długi rejestr przesuwny (np. 4 układy 4094) żeby obsłużyć 4 cyfry wyświetlacza. To może być coś takiego: $regfile = "attiny26.dat" $crystal = 8000000 Config Portb = Output Config Portd = Output Config Adc = Single , Prescaler = Auto , Reference = Avcc Dim V as Word Dim V_real as Single...
no to problem rozwiazany [; caly czas nie zwracalem uwagi, ze ty dane pchasz przez DMA. no wiec problem polegal na tym, ze UART jest na tyle wolny (albo procek na tyle szybki [; zalezy jak na to patrzec), ze zanim on zaczal te dane tak naprawde odbierac i wysylac spod zadanego adresu, to juz funkcja sie skonczyla. skoro zmienna byla lokalna, to byla...
bardzo prosto... zalozmy ze masz liczbe 24962 i chcesz ja przeksztalcic do tablicy 5 elementowej na dziendobry zerujesz tablice. teraz odejmujesz od liczby wartosc 10000 (najwiekszy mnoznik elementow tablicy) i sprawdzasz czy liczba jest juz mniejsza od tego co aktualnie odejmujesz. za kazde odjecie powiekszasz wartosc w tablicy odpowiedzialna za dana...
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...
Jak wpisujesz liczbę rzeczywistą musisz domyślnie użyć kropki . zamiast przecinka , w celu oddzielenia części dziesiętnej od całkowitej. Jeśli bardzo byś się uparła to możesz zastosować nagłówek locale z biblioteki standardowej, aby zmienić to zachowanie. Opis użycia znajdziesz w internecie.
[syntax=c] stemp = (int)temp/10; [/syntax] Albert
Była impreza rozumiem I to w najbardziej nieludzkim formacie - wyjście firmowe :-) Przed chwila napisałem, że nie chcę iść na gotowe, Wystarczy mi, jeśli ktoś przedstawi mi wskazówki jak rozwiązać problem. Przesuwasz 2 razy w prawo, dodajesz 1 i uzyskany wynik jeszcze raz przesuwasz w prawo. W ten sposób uzyskujesz zaokrąglenie przy dzieleniu przez...
Jest w Microwin (trzeba sobie ściągnąć) funkcja scale: [url=http://support.automation.siemens.c...
https://obrazki.elektroda.pl/4868547700_... Dzisiaj zrealizuję projekt na malutkim, ośmionóżkowym mikrokontrolerze PIC w obudowie DIP8 oferującym skromne 3.5kB pamięci Flash. Co więcej, do komunikacjami z peryferiami użyję tylko dwóch pinów - całość opierać się będzie o I2C. W oparciu o nie uruchomię kontroler wyświetlacza/klawiatury oraz...
Tak, dzieli się tak jak liczby zespolone. Przecież liczba rzeczywista (twoje 230) może być traktowana jak liczba zespolona z zerową częścią urojoną. Pozdrawiam wszystkich jjanek
Proszę bardzo, dzielenie 2bajtowe : DIV16_16: ;R4-AHigh R5-ALow (dzielna A) ;R6-BH R7-BL (dzielnik B) ;wynik A/B to: A-czesc calkowita B-reszta ;R4-High R5-Low - czesc calkowita ;R6-High R7-Low - reszta ; ;wykorzystywane są: 00h, 01h, 02h, 03h (R0, R1, R2, R3 in Bank0) ;wymienione obszary powinny być wyzerowane przed...
zmień ee=1/4; ee=1.0/4.0;
https://obrazki.elektroda.pl/3589381800_... Niedawno przedstawiłem wnętrze taniego smartbanda z interfejsem BT, kolorowym wyświetlaczem i kilkoma funkcjami typowymi dla tego segmentu https://www.elektroda.pl/rtvforum/topic3... Teraz opiszę jak zabrać się za programowanie tego układu. Opaską steruje SoC DA14585 firmy Dialog...
Witam potrzebuje pomocy. Mialem napisac program na dzielenie dwoch liczb, wszystko poszlo ladnie program dziala tylko ze nie mam pojecia jak to zrobic zeby mozna bylo dzielic liczby typu 0.05x 0.4. Prosze was o pomoc, ponizej zamieszczam kod programu [syntax=pascal]program dzielenie2liczb; var a,b:integer; procedure jp; begin writeln('Dzielenie dwoch...
https://obrazki.elektroda.pl/4689387300_... Jak niedawno zapowiadałem, prace nad projektem efektora do miksera Behringer DJX700 praktycznie zostały zakończone. Na chwilę obecną mam działający układ wraz z devboardem i ukończone programy efektów. Ale po kolei. O samym procesorze FV-1 możecie poczytać w innych moich tematach; konkretnie...
Bardzo dziękuję za dzielenie się wiedzą i przydatne oprogramowanie - może wreszcie wyciągnę z szafy raspberry PI i przyda mi się właśnie do MPPT 10A :) Czy ja dobrze rozumiem, że liczby ujemne prądu kodowane są w U2 (inwersja bitowa + 1) ?
http://obrazki.elektroda.pl/4339422600_1... To moja trzecia konstrukcja na FPGA ;) pierwszy był trywialny zegarek na kilku licznikach, a potem prosty kalkulatorek dodający dwie liczby. Tak więc proszę o konstruktywną krytykę i porady, co by tu można jeszcze ulepszyć. FPGA ciekawi mnie już od jakiegoś czasu, ze względu na to, że można...
dzielenie liczby 16bit bascom dzielenie liczby dzielenie liczby przez
gasną światła skoda fabia mixer przedwzmacniacz hummer ekran
tas5719 zasilanie makita migają diody
Schemat i charakterystyka tranzystora C1470 (2SC1470) Citroen Xsara 1.4 – diagnostyka czujnika MAP: objawy, pomiary, testy, Bosch, Magneti Marelli