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[].
A możesz do tego użyć FPU? wtedy problem byłby banalny - ładujesz mu na stos liczby w formacie BCD (przy okazji samo skonwertuje się na rzeczywiste), robisz mnożenie i wywalasz zawartość ztosu do pamięci, też w formacie BCD - w sumie trzy polecenia.
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...
Witam. Gdzie znajdę gotowe procedury w asemblerze dla pic 16f84 np. mnożenie,dzielenie liczb 32-bitowych itp.
dobra a wiec od nowa pisze co i jak, dostałem od nauczyciela trzy pytania dotyczace asemblera, ja osobiscie jeszcze nic w nim nie robilem nie mialem stycznosci i troche go nie kumam.... 1. Inkrementacja jest to..., natomiast dekrementacja jest to ... w języku programowania ASEMBLER 2. Napisz prosty program w ASEMBLERZE dla układu 8051 realizujący funkcje...
Dzielenie przez 8 to nic innego jak przesunięcie o 8 bitów w prawo, czyli w przypadku 8-bitowych procesorów wywalenie najmłodszego bajta wyniku. Dzielenie prze 8 to nie przesunięcie o 8 bitów w prawo, tylko o 3 bity. Do autora: dzielnie wlaczysz, tracisz czas, a na końcu koledzy podsyłają ci funkcje arytmetyczne zaimplementowane w C. Jaki jest więc...
Dzielenie jest łatwe w uproszczeniu, jeśli np. obie liczby mają jednakową ilość zer z prawej strony, to o tyle mozna je przesunąć w prawo. Ogólnie algorytm dzielenia jak liczb dziesiętnych w podstawówce. Mnożenie jest już w µkontrolerze i to nawet w postaci cząstkowej fmul .
Witam, mam problem z dwoma zadaniami na tablicach w asemblerze, mianowicie: 1) ustawić bit zerowy na wartość drugiego bitu każdej liczby w tablicy 2) każda liczbę tablicy pomnożyć przez następna, występująca po niej. mam już "ramy" programu- funkcje zmieniające typ wprowadzanych liczb, pobieranie liczb do tablicy z klawiatury, potrzebuje tylko kilka...
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?
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...
Zacznij zatem od porzucenia Bascoma i przesiadki na C, skoro zależy Ci na wydajności. Przy okazji możesz wziąć procesor tańszy od AVR i z 10 razy szybszy, np. jakiegoś Cortexa. Zacznij zatem od sensownego udzielenia odpowiedzi na jego pytanie. Może jeszcze ARM i frytki do tego? Nie wiesz, nie pisz. Dawid88: Zagadnienie bardzo interesujące, bo sam wiem...
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...
Witam Czy posiada ktoś kod do asemblera, wykonujący mnożenie liczb szesnastkowych?? Proszę o szybką odpowiedź.
Witaj Nie wiem w czym widzisz problem, mnozysz czy dodajesz rownie dobrze liczby 32bitowe takze w asemblerze. Troszke wiecej problemy jest gdy je dzielisz, ale to tez do przeskoczenia (zamiana na ułamki i mnożenie) Duza liczba bitopw jest potrzebna gdy mnożysz liczby z granic przedziałów, czy ułamki, a tak to wystarczy ci najstarsze 8bitów z wyników...
A wiec tak programuje w jagodzie chce napisać kalkulator i z dodawaniem odejmowaniem mnożeniem i dzieleniem nie mam problemu gdy w programie mam tylko jedną operacje z góry określoną prze zemnie np dodawanie dwóch liczb i je wyświetlenie na LCD. ale problem jest w tym że nie wiem jak samemu wybierać co chce zrobić dodawanie czy odejmowanie itp. 1.wczytuje...
Witam, dostałem do napisania program w asemblerze, dla procesora 8086. Program ma być napisany w środowisku dosboxa. Cel programu to wykonanie operacji dla liczb 79 i 82 -dodawania -odejmowania -mnożenia Wyniki mają być wyświetlone w sposób dziesiętny w osobnym programie -dzielenia i wyświetlenie wyniku w sposób dziesiętny całkowitego - wyświetlenia...
Witam! Czy wiecie może jak pomnożyć i podzielić dwie 3-bajtowe liczby w kodach ZM i U2 w asm 8051.Moze ktos bylby laskaw napisac takie podprogramy. Z gory dziekuję. Rozumiem że ZM to Znak Mantysa a U2 to Uzupełnienie do 2. Aby z tym coś zrobić to musisz jak w ułamkach doprowadzić do wspólnego mianownika czyli jeden z tych systemów liczenia zamienić...
potrzebujesz odwzorowania: 0 = -15.00 1023 = +15.00 Najpierw pozbędziemy się kropki dziesiętnej: 0 = -1500 1023 = +1500 Teraz pozbędziemy się znaku: 0 = 0 1023 = 3000 Przekształcenie sprowadza się więc do pomnożenia wartości z ADC przez 2,93255132. Pomnóżmy tę liczbę przez 256, otrzymamy 750,7331378, w przybliżeniu 751. Mamy zatem mnożenie bez znaku...
ponieważ 51 nie ma sprzętowego dzielenia liczb 16 bitowych więc kolega musi poszukać sobie algorytmu do dzielenia takowych liczb i ten algorytm sobie zaimplementować prosta sprawa jeśli nie uda się znaleźć to ja udostępnie ale uprzedzam jest po angielsku jak zresztą cała współczesna elektronikia (no poza drobnymi wyjątkami) :D
Witam wszystkich. Mam pewien projekt do zrobienia i w sumie nie wiem jak sie do tego zabrac. Temat zadania brzmi: procedury obliczania iloczynu liczb n-bitowych w formacie 8x8, 16x8, 16x16 w asemblerze AVR. Czy moglibyscie mnie nakierowac, od czego mam zaczac? Najlepiej gdyby ktoś spróbował mi wytłumaczyć problem. Dzięki z góry.
Jeden z argumentów może przekroczyć 256 (liczba ma być 3-cyfrowa) więc nie ma jednego rozkazu mnożenia w 8051. Wracając do tematu. Rozumiem, że stały czynnik zapisany w pamięci (u Ciebie WAL _1...WAL3) nie przekracza 03E8h tak? A ile cyfr ma ta druga liczba (jaki ma być jej zakres)? Jeżeli byłaby ograniczona do dwóch cyfr to mnożenie jest banalne z...
Z drugiej strony pisząc w języku C nie za bardzo ma sens zastanawianie się co ile cykli zajmuje ... Co za brednie! ... to wnioski jakie można wyciągnąć z tego pdfa można sobie wsadzić głęboko w .... Raczej twoje wypowiedzi można sobie wsadzić głęboko w d...., bo jak to często bywa, są bez sensu. Autor dostał wszystko czego chciał. Z jednej strony dowiedział...
Ja robiłem to w asemblerze w następujący sposób: mov B,#0Ah ;wpisujemy 10 do B mul AB ;mnozymy A razy 10 add A,<cyfra> ;dodajemy wczytana cyfre do A I generlanie działa to tak, jak wpisujemy liczbę dziesiętną, czyli wpisujemy cyfrę i przesuwamy o jedną pozycję dziesiętna w lewo (co odpowiada mnożeniu przez 10) i dodajemy następną cyfrę itd. Oczywiście...
Nie ma najmniejszego problemu, choć oczywiście to wydłuży obliczenia. W sumie to Ty decydujesz o tym, co chowasz w rejestrach :] Moim zdaniem, mimo, że to strasznie wygląda, jest to rozwiązanie dość proste i skuteczne. Mantysę bowiem zapisujesz jako liczbę całkowitą. Pozdrawiam :)
Czasem musimy podzielić wartość zmiennej przez stałą, która NIE JEST całkowitą potęgą dwójki. Można chytrze wykorzystać wbudowaną w procesor mnożarkę. A nawet bez mnożarki sposób jest dobry, bo dzielenie jest przynajmniej dwa razy dłuższe i wolniejsze od mnożenia. Przyjmijmy, że chcemy dzielić bajt X przez stałą D. Znajdźmy „k”, największą...
Nie umarł i nie umrze, aczkolwiek może zostać "zdegradowany" do pozycji języka, który jest potrzebny tylko do napisania kompilatora. Stanie się tak, jeżeli pojawi się jezyk wysokiego poziomu, a właściwie to kompilator takiego języka, za pomocą którego będzie można uzyskać kod równie wydajny. Chociaż i tak zawsze pozostanie grupa entuzjastów asm. Znajomość...
Witam ponownie napisałem coś co przypomina generator liczb pseudo losowych jeśli w tym tyg nic nikt nie zasugeruje proszę o zamknięcie tematu. org P:$100 move #$024411,y1 ; liczba 'a' dodatnia wieksza niz 0.25 move #$4f4f4f,x1 ; kolejna 'b' liczba dodatnia wieksza niz 0.5 move #>$010011,y0 ; stala wieksza niz 0.125 do #25,koniec mpy y1,x1,b ; mnozenie...
Domagasz sie konkretów więc sam podaj konkrety. Jak rozumiem chodzi poprostu o to że masz jakąś liczbę wejściową IN i mnożysz ją przez 1.6 otrzymując OUT. Na początek musisz określić zakres poszczególnych liczb, może dla Ciebie to oczywiste, ale dla mnie nie. Np: IN - od 0 do 360 (tak sie domyślam, ale równie dobrze możesz chcieć robić 2 obroty) OUT...
Tylko że jak pomnożę całość przez 10 to już nie zrobię tego na 8 bitach. Czy jak dziele 2 liczby inie dzielą się całkowicie to ustawiany jest jakiś bit lub kilka ? Poza tym nie mam zielonego pojęcia jak wyświetlić pojedynczą cyfrę na wyświetlaczy z jakiejś 3 cyfrowej liczby zapisanej w końcu w postaci hex. Zakres liczb przy podanym przeze mnie wzorze...
Widzę żywą reakcję. Cieszy mnie to.Sam jestem automatykiem i widzę że tacy są również w RTV-forum. Co do sterowania fazowego grzałkami 18 KW (pisał o tym POLO2) to niezły byśmy mieli zakłucacz. Oczywiście teoria regulacji w regulatorze PID dotyczy wielkości ciągłych ale implementuje się takie układy w elektronice cyfrowej masowo. W równaniu regulatora...
Z pewnością sposobów jest mnóstwo. Przypomniałem sobie troszkę asembler mcs51. Mam nadzieję, że program w asemblerze wyjaśni wątpliwości (albo pogłębi ;-) ). Skorzystanie z "tabliczki dzielenia" lub "tabliczki mnożenia" na liczbach o podstawie 2^8 przedstawia poniższy program. Tabelę rozbiłem na 3x256 bajtów. Obliczenie realizowane wg zależności x=256*a+b...
SHR, czyli Shift Right, binarnie przesuwa bity o podaną liczbę miejsc w prawo, z tego co pamiętam, nadpisując zerami, czyli zakładamy cx = 0000000000101011 teraz, po wykonaniu np.: shr cx,3 otrzymamy cx = 0000000000000101 | 011 jeżeli zatem wykonamy shr cx,16 , wszystkie bity powinny zostać przesunięte "poza rejestr" i nadpisane zerami (oczywiście mowa...
Zgadza się. Moje przeoczenie. Mam jeszcze jedno pytanie. Docelowo wynik z ADC będzie dosuwany do lewej czyli do ADCH. Interesuje mnie wynik w formie 8 bitowej czyli pozostałe 2 bity w ADCL ignoruję. Aby otrzymać wartość w woltach przy napięciu referencyjnym 5V muszę 8bitową liczbę z ADCH pomnożyć przez ok 0.0195. Nie znalazłem nigdzie w sieci jak mnożyć...
Tutaj jest kod na dzielenie 2-óch liczb 8-bitowych dla AVR: ;* "div8u" - 8/8 Bit Unsigned Division ;* ;* This subroutine divides the two register variables "dd8u" (dividend) and ;* "dv8u" (divisor). The result is placed in "dres8u" and the remainder in ;* "drem8u". ;* ;* Number of words...
Ok więc jak rozumiem chcesz zamienić to na napięcie... mnożenie floatów w ASMie to poroniony pomysł, wiesz o tym? Anyway, pomyśl jak to zrobić w całkowitych liczbach (te 12bit to nei problem - znajdź biblioteki mnożące 16x16) lub mysl sam jakt o w flotach zrobić (ale będzie to sadystycznie wolne).
żadne, wszystko zależy od tego jak wygląda Twój program i czy umiesz posługiwac się asemblerem. Przy dobrym wietrze koło 30% używaj szukaj I tu bym się niezgodził. Zanim zacząłem programować mikroprocesory jednoukładowe w C moje największe programy napisane mieściły się w 2kb pamięci i też wykonywały obliczenia matematyczne typu dzielenie i mnożenie,...
shg - po pierwsze nie wymądrzaj się (to odnośnie Twojej propozycji mojego dokształcania); Dobra, przepraszam, troche przesadziłem. :oops: . Nie mam nic na swoją obronę, oprócz tego że byłem niewyspany (jak zwykle) i ciężkiej książki, o której niżej. Ten post nie jest żadną docinką z mojej strony, bronię tylko swoich poglądów i wyjaśniam kilka spraw...
Poczukaj w notach aplikacyjnych microchipa, są tam opisane procedury mnożenia, dzielenia a nawet chyba jakieś funkcje trygonometryczne.
ZAD. 1. Przygotować i uruchomić programy w języku asemblera 8051: a) kopiowania N-bajtowego obszaru TABL 1 z pamięci kodu do pamięci wewnętrznej DATA (obszar TABL2), b) kopiowania bit po bicie w pamięci DATA fragmentu danych z obszaru TABL2, a następnie bajt po bajcie i utworzenie obszaru TABL3 c) kopiowania obszaru TABL2 do zewnętrznej pamięci XDATA...
Pytanie jest co wydrukuje instrukcja I.14. Program ten sie nie skompiluje.. Ale tu akurat widać, że to jest tylko fragment programu. Może wystarczy odpowiedź, że wydrukuje (czterocyfrową) liczbę szesnaskową, liczbę dziesiętną i jeszcze dwie dwucyfrowe liczby dziesiętne rozdzielone myślnikiem? Anegdota - dawno, dawno temu pisałem egzamin z asemblera....
https://obrazki.elektroda.pl/3563451200_... Intro Zawsze fascynowała mnie możliwość konwersji sygnału czasowego na dane w dziedzinie częstotliwości. Pamiętam jak w wieku około 16 lat dopytywałem mojego ówczesnego nauczyciela matematyki, jak działa transformata Fouriera. Dowiedziałem się wtedy tylko że jest to całka, niestety nic więcej...
http://obrazki.elektroda.pl/7805368800_1... http://obrazki.elektroda.pl/4555306000_1... Tiny Gad A- żegnajcie nudne wyświetlacze ;) Prawie luxomierz na ATTINY13 Nie da się ukryć, że z pewnych kontrowersyjnych ;) powodów szczególną sympatią darzę najmniejsze z procesorów atmela. Przedstawiona konstrukcja kolejny raz opiera...
Jednak liczylem na lepsza pamiec, rasowy asemblerowiec chyba powienien ja miec.Co do zmiany zdania to napisales, ze nic tu nie napisales o necie. Piszac tu zaponiales chyba co pisales 5 dni wczesniej, ze na necie sa takowe biblioteki. nie napisałem tutaj nic o tym, że coś jest na necie Tutaj, czyli tak jak się patrzysz na monitor i przewijasz ten temat...
Chciałem to zrobić, aby lepiej rozumieć asemblera. A jak się ma asembler do bramek i tablic Karnaugha? Czy chcesz zbudować własny procesor, czy zrozumieć asembler istniejącego procesora. Same operacje w asemblerze nie wymagają znajomości rozbudowanych układów logicznych na poziomie bramek. Wystarczą operacje logiczne i arytmetyczne na liczbach zapisanych...
Witajcie, Dużo szukałem, ale nie mogłem znaleźć Działającego programu do kalkulatora, który dodaje, odejmuje, mnoży i dzieli ( Może też pierwiastkować ) maksymalnie 3 liczby 16-sto bitowe i wynik pokazuje na wyświetlaczy LCD. Jak by ktoś posiadał to był bym wdzięczny za wstawienie.
Ułamki w liczbach stałoprzecinkowych mnoży się tak samo jak liczby bez ułamków, tylko potem konieczna jest albo korekcja przez przesunięcie, albo przy wyświetlaniu uwzględnienie odpowiedniej pozycji przecinka.
Witam, ostatnimi czasy zainteresowałem się (po części przez studia) programowaniem mikroprocesorów, wykorzystując program EdSim51, do początkowej nauki Assemblera. Jakkolwiek początkowe sukcesy w nim teraz napotkały na przeszkodę. Mianowicie próbowałem zacząć korzystać z programu FASMW, by pisać bezpośrednio pod Windows, i chciałem na początek sprawdzić...
8 tysięcy przerwań na sekundę z nietrywialną obsługą na AVR niekoniecznie musi się udać. Co do reszty - albo C i uint64 odpowiednio przeskalowany (czyli liczymy nie w jednościach, a w tysiącznych), albo AVR, asembler i własny typ dokładnie taki jak trzeba np. 45-bitowy, i też liczymy w tysiącznych. Mnożenie i dzielenie uint64 może AVR zarżnąć. Z ARM...
Witam. Powyzszy mikrokontroler jest czescia regulatora, 64 bity to liczba oznaczajaca czas trwania pewnej operacji. Bity sa wczytywane przez jeden z portow szeregowo 8x8 bitow z rejestru sterowanego przez miltuplexer (to nie problem). Druga liczba jest tak naprawde max 62 bitowa i przystosowuje czas do bazy danych. Jest wczytywana podobnie jak pierwsza...
Witam. Mam taki problem z asemblerem. Chciałem przemnożyć rejestr ecx przez liczbę 5 z wynikiem w ecx. Czy istnieje taki rozkaz, który to realizuje a jeżeli tak to jak się go definiuje. Zaznaczam, że używam masma'a. Pozdrawiam.
Witam, czy ktoś wie jak jest reprezentowany typ float w C Keila? Program piszę w asemblerze, ale wydłubałem z Keila sobie procedurkę asemblerową do mnożenia zmiennoprzecinkowego. Mam tylko problem z odpowiednim sformatowaniem argumentów dla tej procedurki. Ile bitów jest na mantysę a ile na cechę liczby, jak jest prezentowany znak? (w sumie jest 32bity)...
ten przedział (0,1) można zrobić w ten sposób: short a/short b, gdzie a<b i nie dzielić tego bo według mojej wiedzy (może być bardzo wybrakowana [wiedza]) wyjdzie 0 więc zamiast dzielenia ten mniejszy short mnożę sobie przez kolejna liczbę i wynik mam na dwóch shortach, a później dzielę przez tego większego shorta i znów wracam rozmiarem do pojedynczego...
Witam, to jest mój pierwszy post i mam nadzieję, że nie złamię nim żadnego z punktów regulaminu. Mam pytanie- prośbę, mianowicie: Moim zadaniem jest napisanie programu kalkulator który dodaje, odejmuje, mnoży i dzieli liczby dwubajtowe. Nie chcę prosić o podanie gotowego programu, bo nie o to chodzi. Czy na początku programu powinnam najpierw podać...
Dokładnie. Poza tym w C masz sprawę ułatwioną. Zamiast samemu pisać procedury na np. mnożenie liczb, zastanawianie się jak i skąd mają być wczytane, do jakich rejestrów, piszesz po prostu: a=b*10; C jest moim zdaniem dużo prostszy od ASM w pisaniu kodu, bo działasz na wyższym poziomie. Ale jak sam napisałeś i tak trzeba poznać sprzęt==poczytać dokumentację...
Ja w swoim protonie mam możliwość wstawek z ASM , mam wygenerowanego asma do wglądu, i wiele innych plików jak chociażby ten poniżej: 16C505,84,9, Warning! Line [3]In file [PRZYKŁ~1.BAS] *** No analogue ports on this device. ALL_DIGITAL Command ignored! *** PROGRAM COMPILED WITH WARNINGS. 84 Words used 9 Variables used in the 16C505 from a possible...
tjanusz :arrow: znam troszke c# na tyle ile mi jest to potrzebne, ale w c# przecież można także wstawiać kod asemblera tworząc np. swoje własne algorytmy dzałań matematycznych. Pszepraszam, ale nie wiem co to znaczy " żródełko" gcc lub FreePascal i jak mogę do tego dotrzeć :arrow: elektryk dokładnie np. teraz pracuję nad potęgowaniem modulo metodą iterowanego...
Próbowałeś podkręcić procesor np. do 20MHz? Zanim o tym pomyślę wolałbym raczej przyspieszyć działanie programu. Spróbuję np. pozamieniać niektóre mnożenia na przesunięcia bitowe lub zmniejszyć liczbę operacji na liczbach zmiennoprzecinkowych. Algorytmy rysowania linii i stawiania punktu w buforze chcę oprzeć na asemblerze (zamiast bascomowych komend...
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...
Keil nie obsługuje natywnie arytmetyki stałoprzecinkowej. Cortex-M3 ma instrukcje nasycające rejestr do n-tego bitu, ale żeby z nich korzystać, musisz pisać w asemblerze lub skorzystać z gotowych funkcji CM3_intrinsics. Cortex-M3 nie ma instrukcji natywnie pracujące w jakimś stałoprzecinkowym formacie (np. Q15, jak dsPIC) - te operacje musisz robić...
Prawdopodobnie (bo jest późno) oryginalna proceura bedzie działać pod warunkiem że dobrze umieścisz dane wejściowe tzn ze wpiszesz jedną liczbe 16 bitową na początku do wyniku na mniej znaczących pozycjach. Wtedy po drodze przesuwając bity wyniku równiez przesuwamy jeden z czynniku iloczynu co czyni algorytm szybszym. A tak nawiasem mówiąc to można...
hmm faktycznie..... czyli przy drógim dzieleniu trzeba mianownik podzelić prze 256, usunąc młodszy bajt i w jego miejsce wpisac starszy a msb trzeba by wyzerowąć. tylko że wtedy powstaną przekłamania:/ nieduże i tylko po przecinku ale tego juz chyba nie przeskoczymy, gdyż brakuje dokładności Dodano po 12 chociaż jest sposub na to drógie dzielenie, zeby...
WITAM Przepraszam że się wcinam ale mam pytanko do kolegów jak dalej zrobić aby te liczby wciśnięte np: 1 i 2 dawały liczbę 12 do dalszego działania programu? Chodzi o Bascom. masz tu kawałek mojego programu , powinieneś wyczaić o co chodzi : Licznik_pomocniczy = 0 A = 0 B = 0 C = 0 End If If Licznik_pomocniczy = 1 Then Locate 2 , Licznik_nastepny...
Nigdy nic nie napisałem na PC.A z czym bascom miał problemy to doskonale poznałem ,nawet przy wolnym podawaniu impulsów na przerwanie i dodając coś w nim na zmiennych single LCD zaczynał wyświetlać syf. Dodając coś do worda lub bajta nie było takiego problemu, więc skróciłem podprogram na max. W przerwaniu dokonuje pomiaru przebiegu,aby ten przebieg...
Ciśnieniowy kontroler poziomu wody https://obrazki.elektroda.pl/7746273200_... WSTĘPNIAK Witam wszystkich entuzjastów elektroniki! Chciałbym zaprezentować przykład wykorzystania scalonego półprzewodnikowego czujnika ciśnienia w roli miernika poziomu wody. Dzięki pomiarowi ciśnienia słupa wody możliwa stała się kontrola i utrzymywanie...
Tu jest taki dość "przyjazny" algorytm, bez dzielenia i mnożenia, ale potrzebne są instrukcje przesunięć logicznych, porównywania, oraz AND i OR http://www.cp.eng.chula.ac.th/~krerk/pub... Jest jeszcze coś takiego, myślę, że Ci będzie pasować. Liczy pierwiastek z 32 bitowej liczby naturalnej (n), wynik w root: root=0 for(N=15;...
To jeszcze ja wtrące swoje 3 grosze. Co do select case to nie polecam - mniej miejsca zajmują pojedyńcze warunki IF tylko trzeba wtedy dobrze przemyśleć aby nie wyskakiwały dwa naraz albo chociarz prawidłowa wartość była wtedy kiedy oczekujemy tego. Dodatkowo zauważyłem ze w Bascomie 8051 użycie podwójnego lub potrójnego warunku IF (if cos=1 or cos=2......
Dzieki wielkie za odpowiedz Zmodyfikowalem troche program liczący w HEXie a noz sie komus przyda [syntax=asm]ORG 000H START: LCALL WAIT_KEY ; czekanie na przycisk z klawiatury SWAP A ; zamiana starszych i młodszych bitów MOV R0,A ; zapamiętanie warości pobranej z klawiatury w rejestrze R0 LCALL WAIT_KEY ; czekanie na przycisk z klawiatury ADD A,R0 ;...
Witam. Jeśli można to bym prosił kolegę asembler o jeszcze trochę dokładniejsze opisanie tego sposobu pomiaru napięcia bo bardzo mnie to zaciekawiło. 1.22 V to stałe napięcie odniesienia wytwarzane przez procesor , na jego podstawie przez wbudowane wzmacniacze operacyjne wytwarza on napięcie 2,56 V . To rozumiem. Jeśli napięcie zasilania podamy również...
Mam wrażenie, że jeśli te sygnały nie muszą być HiFi, to da się zrobić 23 sygnały na jednym module STM32F103C8T6. Ale trochę trzeba się postarać. Podliczyłem - STM32F103C8T6 ma 19 pinów "5V tolerant" (A8-12, A15, B2-4, B6-15) i 11 z ograniczeniem do V_DD=3.3V (A0-7 B0,1,5); z tego B2 to BOOT1 (służy do wybierania, z jakiej pamięci ma startować, ale...
Programy się zwykle pisze a nie robi :) Przy pisaniu programów musisz wykonać następujące kroki: 1. Zdefiniować problem W przypadku twojego kalkulatora musisz określić: - typ obsługiwanych danych - czy to będą liczby wyłącznie całkowite czy całkowite i ułamkowe (ogólnie mówiąc rzeczywiste) - rodzaje działań jakie ma wykonywać twój kalkulator, np. dodawanie,...
http://obrazki.elektroda.pl/5297296700_1... Podstawą pracy układu jest „generatorowa” metoda pomiaru. W roli generatora wykorzystano przerzutnik Schmitta, który zapewnia działanie urządzenia w pełnym zakresie pomiarowym. W celu pomiaru C i L wykorzystano oddzielne generatory, przełączane w zależności od ustawionego trybu...
Witam Potrzebuje waszej pomocy, musze napisac stoper w asm. Już sie męcze z tym troche i nie chce działac tak jak powinno, więc prosze was o naproawdzenie/poprawienie błedów w kodzie ponizej. I chcialbym rowniez wiedziec, czy moja interpretacja polecen w tym kodzie jest poprawna. Sam Timer działa poprawnie. Chcialbym aby sterowanie stoperem odbywalo...
Przedstawiam "CLR2313"; czyli miernik pojemności, indukcyjności i rezystancji na ATtiny2313 (AT90S2313). Pomiar parametrów elementów pasywnych to jeden z problemów w pracy majsterkowicza. Chciałem zaprojektować urządzenie, które parametrami nie będzie zbytnio odbiegać od podobnych amatorskich konstrukcji. Oczywiście, i wśród konstrukcji amatorskich...
http://obrazki.elektroda.pl/4029783300_1... Układu SID (6581 stary i 8580 nowy), będącym muzyczną orkiestrą komputera Commodore 64 nie trzeba nikomu przedstawiać – między innymi dzięki jego brzmieniu owa maszyna osiągnęła tak dużą popularność. Warto tylko przypomnieć, że SID ma jedynie trzy kanały, ale umiejętności programistów...
jest to instrukcja PL do laboratorium. Zawiera ona programowanie wyswietlacza LCD, mnozenie liczb ktore w wyniku daja np 24 bitowa liczbe w kodzie bcd i wiele pozytecznych uwag przy programowaniu.Instrukcja w jezyku polskim.
Przesyłam moją propozycję implementacji algorytmu FFT w asemblerze. Celem nie ma być dokładność, ale możliwość upchnięcia analizy w jak najmniejszych uC. Wymagania co do algorytmu: kontroler AVR (w zasadzie dowolny) z min 128b SRAM (64b zajmują dane, a potrzebne jeszcze miejsce na stos). W przypadku ATMega można spokojnie zastosować mnożenie sprzętowe,...
mnożenie liczb dzielenie liczb asemblerze mnożenie liczb bitowych
bosch zmywarka hałas zniekształcenia niskich tonach koszt wymiany licznika
dobre sklepy elektroniczne online dobre sklepy elektroniczne
Zalana płyta gazowa: palnik iskrzy, nie zapala, kod G Ładowanie baterii Joyor S5: 36V zamiast 48V?