Słabo znam PHP, ale może coś podpowiem Dla liczb z zakresu 0-127 [syntax=php]function Integra($lista) { $result = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; if (is_array($lista)) foreach ($lista as $element) { if (is_int($element) && $element >= 0 && $element < 128) $result[$element >> 3] |= (1 << ($element &...
Może coś z tego: [url=https://support.industry.siemens.co... can you process 64-bit floating-point numbers in STEP 7 (TIA Portal) with a SIMATIC S7-300/400 CPU? [url=https://support.industry.siemens.co...
Autorka tematu mogła podać pod jakim to emulatorem to ma działać bo jsr $ff80 to jakiś skok do procedury tego emulatora (pewnie wyświetlanie wyniku). (at)szlus masz rację z tym sta ($80),y a ja od siebie dodam, że na początku zamiast ldy #0 powinno być chyba ldy #1
itoa służy do konwersji zmiennych o typie int, do typu long służy ltoa. A poza tym po co ci taka konwersja? Przecież liczby natywnie są przechowywane w postaci binarnej, więc łatwiej zastosować operacje maskowania bitowego, a nie długotrwałe i pamięciożerne konwersje.
Łap, tylko że zamiana jest z dwójkowego na dziesiętny, a później z dziesiętnego na dwa pozostałe... no i zakładamy że użytkownik jest uczciwy i podaje nam na wejściu tylko 0 i 1 ;] uses crt; var binarna:string; function potega2(pot:integer):int... var i,wynik:integer; begin wynik:=1; for i:=1 to pot do wynik:=wynik*2;...
No kolego - troche wysiłku z tym C. W koncu to forum o mikrokontrolerach a nie kurs "Podstawy C" Napisz sobie jakąś finkcję samodzielnie (dobre ćwiczenie) aby cie naprowadzic np dla liczby do 999. Nie daje gotowca z pętlą lub sprytnym dzieleniem przez 10, tak ze nie ktytykować (kolega powinien takie ćwiczenia robić): [syntax=c] void lcd_dec(uint16_t...
Odpowiedź na pytanie z 1 postu: int val = 123; printf("U=%d.%d", val / 100, val % 100); Co do meritum: czy kod float nap1; nap1 = 257 * 0.0048; także obcina po przecinku? Jesteś w stanie sprawdzić jaki kod generuje kompilator?
Napisz co ma dokladnie robic ten program, podaj dane we i dla przykladu dane wy. Wtedy postaramy sie cos zrobic. Jesli chodzi o twoj kod wyglada na nieco nieprzemyslany, wiec nie bede go poprawial.
Nalezy po kolei dzielic przez 10. wartosc liczby. Za kazdym razem zapisujesz kolejne cyfry liczby. Wiec za pierwszym razem dostaniesz liczbe dziesiatek tysiecy, potem liczbe tysiecy, setek, dziesiatek i jednosci.
Tak dokładnie, tylko nie ustawia całego portu tylko pojedynczy pin, który gdzieś jest skonfigurowany. Program sprawdza jaki bit ma wystawić ((if(dana&0x80)), potem go wystawia (SDA=stan_1 lub SDA=stan_0), potem "zatrzaskuje" ten wystawiony bit (SCL=stan_1, SCL=stan_0) a potem przesuwa zmienną dana o jeden bit w lewo żeby wysłać nastepny bit :). I tak...
Ogólnie to się robi tak, że kolejno wysuwamy bity od najstarszego z liczby BIN i wsuwamy do najniższego rejestrów BCD (od najniższego bitu najniższej cyfry). Po każdym przesunięciu sprawdzamy każdą czwórkę bitów liczby BCD. Jeżeli w danej czwórce jest zapisana liczba >=5 to do danej czwórki dodajemy 3 SETKI DZIEŚ JEDN BINARNIE ;Start: 0000 0000 0000...
Po co używać sprintf do konwersji liczby całkowitej na stringa? To jest nieefektywne. W m8 sprintfa to możesz użyć, jak chcesz bezstresowo "mieszać" tekst z wartościami zmiennych i umieszczać to w tablicy, np x toa. Dlaczego z funkcją utoa też nie działało? Bo utoa jako argument przyjmuje unsigned int czyli na avr 16 bitów a więc max 65535. Ty potrzebujesz...
oto co wielki Mikroszit o tym mówi: Konwertowanie liczb przechowywanych jako tekst na liczby Cały zakres jednocześnie W pustej komórce wprowadź liczbę 1. Zaznacz komórkę i w menu Edycja kliknij polecenie Kopiuj. Zaznacz zakres liczb przechowywanych jako tekst, które mają być konwertowane. W menu Edycja kliknij polecenie Wklej specjalnie. W obszarze...
Ale niestety też trzeba się bawić w konwersję liczb, te to bardziej do string. Nie potrzebne są żadne stringi, konwersje itp. . Do wyświetlenia na wyświetlaczu siedmiosegmentowym potrzeba jedynie informacji co ma być wyświetlane na każdej pozycji. Jaka cyfra od 0 do 9. Owszem można użyć konwersji liczby int na string i z tego wyciągnąć wartości poszczególnych...
Kod który opisujesz nie jest kodem U2, tylko kodem SM (znak-moduł). Jeśli chodzi o konwersję to jest prosta, ale jest kilka szczegółów: 1) w jakim kodzie jest cecha liczby zmiennoprzecinkowej? W 754 jest to kod z obciążeniem, czyli 0 binarnie = maksymalna wartość ujemna. 2) Czy masz opuszczać wiodącą 1 w mantysie? Konwersja przebiega tak: normalizujesz...
Typy stałopozycyjne są rozszerzeniem GCC - być może kompilujesz w dialekcie, który ich nie obsługuje?
Dla wyjaśnienia: 48 to numer porządkowy cyfry "0" w tabeli ASCII. Kolejne cyfry mają kolejne numery, więc w ten sposób przeprowadzana jest konwersja z liczby na znak.
Zapis koloru w postaci HEXa, to po prostu konwersja liczby z systemu dziesiętnego na szesnastkowy. Np. kolor jasny zielony: rgb(173,255,47) == #ADFF2F
możesz użyć funkcji strtol do konwersji liczby szesnastkowej na int-a, np. tak: [syntax=c]#include <stdio.h> #include <stdlib.h> #include <string.h> const char* hex = ":100000000C9437000C944C000C944C000C9458... ":10011000961B881F7A95C9F780950895F894FF... ":00000001FF\n"; // : 10 0110 00 96 1B 88 1F 7A 95 C9 F7 80 95 08 95 F8...
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...
Konwersję z liczby całkowitej na string łatwo można Sobie zaimplementować, implementacje funkcji itoa() też są dostępna, wystarczy poszukać w sieci: [url=http://en.wikipedia.org/wiki/Itoa]i... Część po przecinku też można wydobyć za pomocą itoa() wystarczy pomnożyć wynik przez wielokrotność 10 i zapisać go do integer. Warto ogólnie operować na liczbach...
Witam, Mam na zadanie zrobić konwersje liczby utworzonej z cyfr: 2 i 4 liczby 34.513972 na zapis w hexie, ósemkowym i binarnym. Jak się za to zabrać?
Pewnie bledow masz wiele, ale zacznijmy od poczatku: dtostrf(tem, 1,0,buffer_n);// Konwersja liczby double do asci return buffer_n; //funkcja zwraca buffer_n czyli wartosc cisnia w kodzie ASCI dtostrf nie sprawdza dlugosci bufora, ktory u ciebie wynosi 5 bajtow, w tym musisz miec miejsce na znak konca strungu. Czyli 4 bajty zostaja, konwertujesz...
Scrolla można by zrobić w oparciu o bufor cykliczny. Co prawda nie mam arduino z wyświetlaczem więc pozwoliłem sobie go zasymulować w terminalu w oparciu o kody ANSII https://filmy.elektroda.pl/48_1667431218...
Tak z ciekawości: czemu program traktuje spacje jako "0"? Bo wykonywana jest niejawna konwersja ciągu znaków na liczbę. Tylko że jak wpisze np.: 454grgrg to wyskakuje "Liczba jest dodatnia" a powinno "Niepoprawne dane". Możesz to wykryć tak: [syntax=javascript]isNaN(parseInt(liczba... albo użyć wyrażenia regularnego:...
Witaj Jest mało prawdopodobne. Nie leń się, kliknij ":"
Witam. Nie wiem czy piszę w dobrym dziale, jeśli nie proszę o przeniesienie tematu przez moderatora do odpowiedniego działu. Więc jak to się przelicza, jaki jest algorytm? Spotkałem się z kilkoma np.: liczba 51,27 to będzie binarnie: 11 0011,11011 czy nie?
Witam "integer" nie jest zmienną tekstową. Integer przyjmuje watrtość liczby całkowitej w zakresie od- 32768 do +32767 Integer nie zapisuje ułamków.
Witam Nie potrafie sobie poradzic z zamianą np. z systemu 10 na ieee754 mam np liczbe -12,625 1)zamieniam ja na binarna 1100,101 jak z tego zrobic iee754?? i jak potem z ieee754 zamienic na binarna bardzo prosze o pomoc
(at)ditomek Niestety operacje na float są bardzo kosztowne nie tylko czasowo, ale także zajmują sporo miejsca. Pełna obsługa float to może być i 5 kB, tyle, że kompilator do spółki z linkerem są dosyć inteligentne i nieużywane fragmenty kodu są usuwane. Sens konwersji temperatury na float jest żaden, bo raz, że czujnik zwraca temperaturę w postaci...
witka Pewnie zadaje banalne pytanie, ale mam problem- uzywam mikrokontrolera at89s52, pisze w assemblerze (trudno, takie zadanie). Wiele juz rozwiazalem problemow, ale mam jeden: jak mozna przekonwertowac liczbe liczbe dwubajtowa na liczbe hex? uzywam dwoch rejestrow (powiedzmy LSB-R3, MSB-R4) do przechowywania liczby, liczbe wyswietlam na LCD. \ Z...
Sprawdź jeszcze, co zwraca metoda true jeżeli konwersja się powiodła, fase jeżeli się nie powiodła. Pozwoli Ci to uniknąć zastanawiania się co się stało, jeżeli coś pójdzie nie tak.
A faktycznie. Problem w tym, że w Excelu 1 to niedziela. Może wykorzystać funkcję WYBIERZ? Składnia DZIEŃ.TYG(liczba_kolejna;zwracany_ty... Zwracany_typ Liczba zwracana przez funkcję 1 lub jest pominięty Liczby od 1 (niedziela) do 7 (sobota). Zachowuje się jak poprzednie wersje programu Microsoft Excel. 2 Liczby od 1 (poniedziałek)...
Zapoznaj się z działaniem: TRUNC, ROUND, CEIL, FLOOR :) Pozdrawiam!
Może libmad? http://www.underbit.com/products/mad/ Przy okazji znajdziesz tam linki do znacznej liczby programów korzystających z tej biblioteki. Generalnie zacznij poszukiwania od mp3-playerów, do których są dostępne pliki źródłowe.
Aby zrozumieć przyczynę 1-bitowego konwertera Dual D / A, warto wiedzieć trochę o procesie konwersji cyfrowo-analogowej. Na płycie CD (i każdej innej technologii zapisu cyfrowego) celem jest stworzenie nagrania o bardzo wysokiej wierności (bardzo duże podobieństwo między oryginalnym sygnałem a odtwarzanym sygnałem) i doskonałej reprodukcji (nagranie...
tak to jest najszybsza metoda wykorzystujaca przesuwanie i dodawanie wartosci 3 .Porownanie czasu tej operacji w asemblerze a sposobow napisanych w basicu pokazuje jakie to sa roznice.Algorytm jest kilka razy szybszy i kilka razy mniejszy.i ta metoda nie jest tylko dla 8-bitowych liczb lecz dla kazdej wielkosci liczby.po prostu zamiast 8 bitow przesuwamy...
ander20 napisał: myślałem że wygląda tak: 0000 0001 0010 0011 0100 1000 1001 1010 1011 1100 itd. Dokładnie tak wygląda dla liczb (cyfr) od 0 do 9. Kod 5421 jest kodem dwójkowo-dziesiętnym (nadmiarowym co prawda). Liczby większe od 9 należy przedstawiać jako wielokrotnośći kodu podstawowego, np. 62(10) = 1001 0010(5421). Pozdrawiam wszystkich jjanek
Wiem ze może to niedydaktyczne ale to może być tak [syntax=delphi]procedure TForm1.Button1Click(Sender: TObject); var a : string; // zdefiniowanie zmiennej reprezentującej zawartość Edit1 b : integer; // zdefiniowanie liczby do obliczeń begin a := Edit1.Text ; // wczytanie do zmiennej Edit1.Text:=a+'1'; // dodanie 1 do zmiennej b := StrToInt(a); //...
Właśnie z tych powodów przy AVR-ach przesiadłem się na pisanie w C. Takie i inne konwersje w tym języku to "fraszka" Na '51 miałem napisaną bibliotekę na takie przeróżne konwersje bez ograniczeń. Jedynie przed kompilacją zadawało się ilu bajtowe mają być liczby, ale nie chciało mi się tego tłumaczyć na ASM-a AVR
zamienia dec na hex: function Dec2Hex(D: Word): string; const HexDigits: string Dodano po 2 polecam jescze: http://www.jakubas.pl/pr-pascal.htm
Hej! Zobaczcie jak ja to robię, może komuś sie to przyda: 'Powiedzmy ze zmienna Liczba(single) wynosi 22.62555426 Temp = Int(liczba) ' dzieki temu poleceniu odcinam czesc setna czyli ' zmiennej Temp(byte) przypisuje liczbę 22 Liczba = Frac(liczba) ' dzieki temu poleceniu odcinam czesc ' dziesiętną czyli zmiennej Liczba(single) przypisuje ' liczbe 0.62555426...
Zacznijmy od tego, że ten wyświetlacz w wywołaniu lcd.str_lcd() musi mieć podany tzw. string, czyli łańcuch znaków. Nie możesz tam wstawić wprost danych, musisz je przekonwertować do typu char. Służy do tego wiele standardowych i nie-standardowych funkcji języka C. Zapoznaj się np. z takimi: itoa / ltoa / ultoa / dtostrf / sprintf i pewnie jeszcze parę...
Nie mam za bardzo w tym momencie napisania kawałka kodu (brak programu na tym kompie). Tak jak pisałem w poprzednim poście użyj instrukcji mnożenia MUL_E. Jak poczytasz "helpy" od tych instrukcji, to tam piszą, że: Jeżeli zmiennymi wejściowymi dla MUL_E są liczby 32 bitowe, to wynik jest również 32 bitowy, a w przypadku MUL_M 64 bitowy i wtedy wchodzisz...
Niby dla ARM double i float to to samo a jednak nie to samo. Chyba Ci się pomyliło z AVR... Typ double na ARM jest pełną 64-bitową liczbą zmiennoprzecinkową podwójnej precyzji. volatile float f = 123.5434; f *= 123.123 też nie przejdzie przez koprocesor. Wyżej napisałem dokładnie o tym - bez końcówki "f" (albo rzutowania), to są liczby typu double,...
Nie chcę Cię martwić (bo jeżeli Twój kod działa jak powinien to OK), ale to co robisz w pierwszym poście 1 i 3 nie jest sobie tożsame. Kod w #1 jest jak najbardziej prawidłowy. Typ char to dla platformy .NET tak naprawdę 16-to bitowa liczba z zakresu 0...65535 Więc taki kod: znak o kodzie ASCII = 4 . Do tego w zasadzie typ char został stworzony. Jeżeli...
Przesunięcie przesuwa i nic nie ustawia. Do przesuniętej liczby dorzucamy na koniec wartość binarną kolejnej cyfry, a tę uzyskujemy przez odjęcie kodu ASCII cyfry 0 lub stałej o wartości 'A' - 10 (w ten sposób A daje 10, B - 11 itd.)
Witam r = 2 * r + (d - '0'); W konsoli wprowadzasz cyfry ale doczytywane są one jako znaki. Zmienna d przechowuje te znaki jako odpowiednie liczby z tablicy ASCII. Na zmiennej d wykonywana jest operacja odejmowania liczy ASCII zapisanej w tej zmiennej z kodem ASCII znaku '0' w celu uzyskania cyfry. Np. Znak d='5' ma kod ASCII 53. Znak '0' ma...
Tak ale zapisane binarnie. A to zupełnie co innego w tym przypadku. Jeśli chcesz zapis binarny to robisz binarny. A czy to będzie nkb czy bcd to już inna kwestia. W twoim kodzie jest wszystko ok. Kod jest kodem dziesiętnym w zapisie binarnym. Więc liczby drukowane są po "naszemu" używając cyfr. Jeśli chcesz BCD wydrukować w zapisie binarnym to najpierw...
jeśli chodzi Ci o zapis dla procesora to proszę BCDtoDEC (a%16 + 10 * (a/16)) DECtoBCD ((a/ 10 ) << 4 ) + (a % 10 ) gdzie „a” to twoja liczba % reszta z dzielenia np. 33%16=1 / dzielenie np. 33/16 = 2 << przesuniecie o 4 w lewo np. b1011101 <<4 = 1010000
Generalnie musisz pobrać tekst, dokleić i ustawić tekst... Jeśli znasz z góry rozmiar po prostu zdefinuj tablicę znaków... Jak nie - będziesz musiał z akażdym razem na nowo tworzyć obszar w pamięci na daną liczbę znaków... w MFC chyba by łatwiej to poszło, niż w WinAPI czystym...
Witam, mam napisac program (w asm) który mierzy czas pomiędzy wcisnieciami przycisku. Zaimplementowałem to w taki sposób ze podczas przepelnienia się timera 0 zwiekszany jest akumulator, gdy ktoś znowu wcisnie przycisk to timer jest stopowany i nastepuje wyjscie z petli do czesci programu odpowiedzialnej za obliczenie i wyswietlenie wyniku. Czas zapełenia...
konwersja liczby tekst konwersja liczby string zaokrąglanie liczby
podciśnienie diego zawór regulacyjny atmega odbiornik podczerwień
wyłącznik różnicowo prądowy jednofazowy as502 diora
BMW X3 E83 2.0i 2006 - Luzy w pompie wspomagania Jak włączyć HDMI na pilocie Vectra?