Tutaj możesz się spotkać z opinią że do zapalenia LED można przecież użyć RPI :D [syntax=vbnet]Dim Tablica(32) As Byte At &HF0[/syntax]
tablica jest wskaźnikiem na tablicę, więc powinieneś użyć operatora dereferencji (jak w przykładzie, który wstawiłem). [syntax=c]bufspc[i] = bufspc[i] * *tablica[j][1] / 100.0;[/syntax]
Cześć Jeżeli faktycznie to w tym jest problem to powinno być wystarczające definiowanie w takiej postaci const BYTE USB_ConfigDescriptor[] __attribute__ ((aligned (4))) = { //tu pełno danych } ; W nawiasie podajesz do jakiej granicy chcesz dopasować położenie danych w pamięci 4, 8 , 16 itd. bajtów pozdro
mov DPTR, .Tablica_instrukcji mov A,{instrukcja} jmp (at)A+DPTR Pomijając fakt, że nie mam pewności czy ten kawałek kodu jest poprawny to mam problem ze zbudowaniem tablicy adresów. Pomysł jest dobry, ale wykonanie złe ;), albo zrobisz pomnożysz A przez 2 albo 3 i pod adresem tablica instrukcji zrobisz serie skoków (bliski ma 2 bajty, daleki...
Pomyliłem się, tablica jet pod adresem 0x480. Przesunąłem bity w niewłaściwą stronę. Taka sekwencja będzie prawidłowa: [syntax=C] LDI ZH,HIGH(C64_Ins<<1) LDI ZL,LOW(C64_Ins<<1) LSL R16 ADD ZL,R16 ADIW ZL, #0 ;korekta dla ZH [/syntax]
A tablicy z kolejnymi cyframi nie możesz zrobić? Potem bierzesz adres pierwszego elementu tablicy (adres tablicy) i dodajesz cyfrę. Edit: Kurcze, znowu za późno ;)
Witam, próbowałeś podzielić odczyt na dwie części, zamiast upychać w jednej linii? Wyciągnij adres elementu z tablicy (&(arrays[iterator])) i odczytane 2 bajty (pgm_read_word()) potraktuj jako adres docelowej tablicy z uint8_t, z którego odczytasz jeden bajt. Pozdrawiam
Te siedem adresów, to adresy kolejnych komórek tablicy - wskaźniki zajmują po 8 bajtów, więc każdy jest o 8 większy. Adresy ciągów tekstowych możesz wyświetlić tak: [syntax=c] for(int i = 0; i < 7; i++) { cout << (void *)(titles[i]) << endl; } [/syntax]
Zerknij sobie to pliku .lss i sprawdź następujące rzeczy: 1. czy w ogóle jest tam funkcja SysTick_Handler 2. czy adres funkcji SysTick_Handler zgadza się z adresem widocznym w tablicy wektorów (pod adresem 0x800003c) - adres w tablicy wektorów będzie miał nieparzystą wartość (jeśli np. funkcja SysTick ma adres 0x8001000, to w tablicy wektorów będzie...
W Twoim działającym przykładzie do rejestru wpisujesz adres tablicy ("&" może być albo może go też nie być - również zadziała wg mnie), natomiast w przykładzie niedziałającym najpierw do funkcji podajesz adres tej tablicy, a potem jeszcze raz wyciągasz adres tego adresu - żeby zaspokoić Twoje potrzeby kompilator zmienną tab umieszcza gdzieś na stosie...
bo to nie jest to samo. "sol" zapisane jest we flash i następnie kopiowane do ram w trakcie procedur starutupu. To drugie daje ci adres tego literału. Jest prawdopodobne że kompilator zauważy że te dwa literały są identyczne i zoptymalizuje je do jednego, ale może też tak być że będą one zapisane 2 razy.
Masz odczyt i zapis napędów przy użyciu funkcji SFC14 DPRD_DAT i SFC15 DPWR_DAT. Obsługa w bloku FB60, którego wywołania są w FC63. W net.1 tego FC masz wpisane adresy IO do odpowiadającej bazy instance. Dla Twojego przykładu napęd 27 obsługuje baza DB70. W tym przypadku Cross reference niestety nie zadziała.
Zadeklaruj nową sekcję i w niej umieść tablicę.
----------------------------------------... Jak narazie rozdzielilem adresy w podsieciach Podziała wykonałeś poprawnie. Brakuje tylko maski, adresu sieci, brodcastu i przykładowego adresu IP dla urządzenia. i tak s1 posiada adresy w przedziale od 195.164.11.0 - 195.164.11.31 Maska 255.255.255.224 adres sieci 195.164.11.0...
Niestety nie załatwi, co wynika z pewnych założeń języka. Tablice są elementami przekazywanymi przez wskazanie, musi więc istnieć możliwość pobrania adresu elementu tablicy. A jak wiesz, nie da się pobrać adresu pola bitowego... no i mamy klops.
#STX7E09Kier#CR000#CR1A#ETX Jak tak przyjrzeć się temu protokołowi to powiem szczerze, że ręce opadają. Znałem człowieka który MODBUS konwertował na tekst, robił operacje na tekście i dopiero z tekstu wyciągał dane i wpisywał je do zmiennych. Podejście wysokopoziomowych artystów jest dzisiaj wysoce abstrakcyjne. Co mnie w tym protokole zastanawia to...
Oki to zacznę po kawałku od początku... 1) Tworzę sobie tablicę ruchy, która ma być odpowiednikiem planszy do gry... public static int[][] ruchy = new int[15][]; 2) Do tej tablicy tworzę drugą która jedynie przechowuje indeksy do listy - tablica indeksów wypełniona jest kolejnymi liczbami od 0 do 224... public static...
W R&G najczęściej padają układy DS485, lubi paść procesor od tak sobie mowa o SAK C509 I możliwa awaria NAND FLASH trzeba programować po RS485, specjalnym programem do konfiguracji. Dla flip dot ETKO jest inny, dla ELLZ inny program. Ale zawsze jest NAND FASCH to w niej jest informacja o rozmiarze tablicy oraz protokół transmisji i adres tablicy.
Tablice deklarujesz sobie np tak Tablica1: .Db 100, 200, 34, 23, 12, 45, 23, 56, 43, 28, 96, 23, 34, 12, .... aby pobrać element z tablicy używasz komend lpm oraz rejestru Z czyli np: ldi ZL, low(Tablica1<<1) // załaduj do rejestru Z ldi Zh, high(Tablica2<<1) // adres tablicy , element 1 lpm R18, Z // załaduj do R18 element znajdujący się...
Nie podałeś rozmiaru tablicy przy deklaracji wskaźnika, zadeklarowłeś zmienna "len" ale nie podałeś wielkości. Wielkość tablicy możesz wpisać jak przy deklaracji.
Tablice ARP? Hmm nie mam pojęcia co to jest Już kolego wyżej opisał, że router nadaje urządzeniom adres IP poprzez protokół DHCP. Tablica, w której do adresu fizycznego MAC przypisuje się adres nazwijmy to "wirtualny" zwie się tablicą ARP.
Oczywiście w żaden sposób nie zrobisz tak, aby jeden kanał DMA transmitował dane do trzech różnych, niepowiązanych ze sobą adresów. Ja rozumiałem twój opis tak, że przy jednym wyzwoleniu chcesz przesłać dane do 2-4 rejestrów CCxBUF, ale z kolejnych adresów tablicy. Jeśli to wszystko ma być chaotycznie porozrzucane to się nie da. Prościej zmienić ułożenie...
unsigned char (*tablica) Źle używasz wskaźnika, ot co jest nie tak. Zauważ, że wskaźnik jak nazwa zobowiązuje wskazuje adres pierwszego elementu tablicy cyfry. Inkrementując wskaźnik przesuwasz się po kolejnych adresach, kolejnych elementach tej tablicy. (at)excray, ekspertem nie jestem, ale sama nazwa tablicy jest wskaźnikiem iirc więc jednakowy jest...
Faktycznie, zapomniałem o tym żeby zwracana zmienna była tego samego typu. Już wszystko gada, dzięki.
Nie jestem przekonany co do tego, że użycie tablicy z maskami poszczególnych bitów zoptymalizuje dostęp: w moich wstawkach liczenie maski to dokładnie 7 cykli na dwóch rejestrach(załadowanie 1, jeśli bit1 ustawiony to załadowanie 4, jeśli bit0 ustawiony to przesunąć w lewo o 1, jeśli bit2 ustawiony to zamienić połówki), rozwiązanie z ładowaniem maski...
a jeżeli nie to to proszę jeszcze spojrzeć czy to jest prawidłowy schemat http://zsk.tech.us.edu.pl/dydaktyka/labo... Schemat wygląda na dobry, równania opisujące poszczególne wyjścia są na bank prawidłowe.
W plikach ".cpp" extern "C" [syntax=c]extern "C" void SysTick_Handler(void) { GPIOA->MODER = 0; }[/syntax]
spróbuj tak: register char adres_l asm("r28"); register char adres_h asm("r29"); char tablica[WIELKOSC]; adres_l = tablica & 0x00ff; adres_h = tablica>>8;
Z tego swojego kodu usuwasz "Odczyt numerów ID czujników temperatury" A w to miejsce wpisujesz odczytane adresy do tablicy z adresem danego czujnika. np. tak będzie to wyglądało dla pierwszego czujnika: Dsid1(1)=&H28 Dsid1(2)=&H65 Dsid1(3)=&HC3 Dsid1(4)=&H89 Dsid1(5)=&H05 Dsid1(6)=&H00 Dsid1(7)=&H00 Dsid1(8)=&H25
Wpadłem na pomysł jak to "obejść". - w bootloaderze przekierować tablice na RAM; - "skoczyć" pod adres Reset_Handler w aplikacji użytkowej; - podczas inicjalizacji przekopiować adresy wektorów z flash do RAM (sekcja .data); Na razie próbuję: 1. umieścić wektor przerwań w sekcji .data; 2. umieścić startup.S na początku aplikacji użytkowej; Jak ktoś ma...
pierwszym (lub drugim nieparzystym) bajcie konkretnej sekcji? Funnkca jest pod adresem parzystym ale w tablicy adres do skoku będzie nieparzysty. A odpowiadając zależy co tam w tej sekcji w pliku linkera napiszesz. Jak będzie wyrównana i nie będzie w niej żadnych operacji przesuwających aktualny wskaźnik to tak.
Może błąd jest w tym że wywołanie Pisz_16x16(&"abcd", 64, 120, 0); bierze dane z flasha zaś wywołanie Pisz_16x16(Text_1234_ptr, 64, 64, 0); Pisz_16x16(&Text_1234[0], 64, 84, 0); przez wskaźnik na ram lub adres tablicy w ramie. Przy okazji jak Ci się może to kompilować ? Text_1234[0] = "1234Test\0"; Wypełnij to ręcznie lub przez sprintf'a. Błąd jest...
jeśli a zadeklarowane jest jako tablica: char a[128]; to adresem danych w tej tablicy jest: - a - &a[0] &a to ... w sumie nie wiadomo co [; 4\/3!!
Kompilowałem podany kod u siebie, przy kompilacji jako c++ kompilator rzucał się do linii "static Which=0;", ale po drobnych poprawkach ruszył. W kodzie asemblera nie widzę znaczących różnic, pod symulatorem wszystko działa poprawnie. 1/ Sprawdź, czy zastąpienie "pgm_read_byte(&g_Cyfry[n%10])" przez stałą (np 164) coś zmieni. 2/ Sprawdź, czy przeniesienie...
Ok. Przeszukaj pliki w swoim projekcie po nazwie "SysTick_Handler". Znajdziesz tą nazwę w pliku asemblerowym (lub w pliku *.c) w tablicy wektorów przerwań. Ta tablica zawiera między innymi adres funkcji o nazwie SysTick_Handler. Linker umieszcza tablicę pod odpowiednim adresie w pamięci (zgodnie z datasheet procesora).
Nie wiem co tu do rozumienia, switch ma tablicę przypisań MAC - port switcha i na podstawie tej informacji kieruje konkretne ramki do konkretnego portu. Jeśli adresu docelowego nie ma w tablicy, pakiet kierowany jest do wszystkich portów poza wejściowym, jeśli źródłowego - adres MAC zostaje zapamiętany. Tablica ARP w ogóle nie ma nic do tego, komputer...
Wiesz używałem tej funkcji już sporo razy, się po prostu machnąłem (w sumie dziwne że mi szło w odwrotną stronę przy samych literach to mnie zmyliło) - może zmęczenie. Rozwiązałem to drugie przez wyciągnięcie pozycji dla wektora (mam tam tabelkę ciut większą 4x4) zdefiniowałem 8 wektorów 4 poziome, 4 pionowe, powyciągałem pozycje i poskładałem & i w...
char tablica[3200]; //... short int *tablica2 = (short int*)tablica;
Przy kompilacji tego programu nie masz żadnych ostrzeżeń? Dziwne. W każdym razie jeśli odebrane_dane są typu tablicowego, a funkcja USART_Transmit (char data) przyjmuje jako argument typ char, który w żaden sposób z tablicą jest niekompatybilny to masz problem. Najpewniej kompilator generuje co najmniej ostrzeżenie w tym momencie, bo to co robisz to...
Zadeklaruj "dane" jako "int*" i możesz mu przypisać adres dowolnej innej tablicy, podmianka to tylko przypisanie nazwy innej tablicy.
Żeby obliczyć długość tablicy, umieść jedną etykietę przed tablicą, drugą po tablicy, różnica adresów pomiędzy tymi etykietami to długość tablicy. Żadna funkcja jak widzisz nie jest potrzebna, wszystko wyliczane jest na etapie asemblacji kodu.
Wielkość tablicy adres musi być znana w momencie kompilacji, lepiej i prościej użyć do tego std::string.
(at)BlueDraco No i niby jak miałoby to pomóc? Przecież adres tej tablicy i tak nie będzie miał stałej wartości. Wystarczy lekko zmienić projekt albo dodać jakiś plik ze stałymi do kompilacji i całość się sypie. Może umieścić tablicę w swojej sekcji umieszczonej pod koniec pamięci FLASH.
A co to jest to BYTE? prawdopodobnie: [syntax=c] typedef char BYTE [/syntax] "Jaka funkcja mozna zamienic char na byte?" To jest ten sam typ. Swoją drogą Ty masz trochę inną sytuację. Nie wiem jak to chciałeś zrzutować. Jak masz zmienną: [syntax=c] BYTE buffer[512]; [/syntax] to jest to w myśl tego co wyżej poprostu tablica 512 wartości typu char. [syntax=c]...
Trzeba stworzyć w skrypcie linkera sekcję pod konkretnym adresem i w tej sekcji umieścić tablicę. 4\/3!!
Ładny program tylko, po co? do tego służą bloczki FC85 FIFO i FC87 LIFO, do tego FC 84 ATT ( i oczywiście FC 86 jak ktoś potrzebuje ). Zresztą program jest napisany na 300 i jest nieprzydatny bo kolega ma program na 1200 ze starą wersją poniżej V2.0 ( do tego pracuje na 10.5 gdzie jest tylko LAD i FDB a sterownik nie przewiduje adresowania pośredniego...
Z typami tablicowymi jest trochę "namieszane" w C, a przynajmniej może na to wyglądać, właśnie z uwagi na automatyczne dopasowywanie typów. Generalnie: jakis_typ tab[]; jakis_typ *wsk; tab jest tablicą, czyli ciągiem elementów typu jakis_typ ułożonych w pamięci jeden za drugim. Odwołanie w kodzie do samego 'tab' daje adres tablicy, a właściwie...
W uip też ten ból występuje, a problemem jest przekazanie gotowej ramki IP do ARP, ARP nie mając adresu IP w swojej tablicy rozpoczyna procedurę pozyskania adresu MAC, a ramkę z IP odrzuca. Może w tym jest problem. Jeśli chcesz to wykluczyć, przed wysłaniem ramki do komputera wyślij cokolwiek do STM32, żeby ten zarejestrował adres IP i MAC w swojej...
No ale jak zrobisz takie przyporządkowanie o jakim piszesz (bez podziału) to funkcja Reset_Handler ma adres w RAM, więc w tablicy wektorów będzie adres w RAM. Oczywiście zanim ten Reset_Handler się uruchomi, to w RAM nic nie ma - tak więc to nie ma prawa działać... 4\/3!!
Sprawdź, cza nazwa Twojej procedury obsługi przerwania jest taka sama, jak w tablicy adresów przerwań w pliku startup. Wyrzuć zbędne wywołanie SetPriority.
Definiujesz tablicę 20 stringów (cout wyświetla początkowy adres tej tablicy)... to jest kompletnie źle. Nie wiesz jakie pola może przechowywać klasa string ani w jakiej kolejności - nie możesz całego obiektu (a raczej tablicy) tak po prostu nadpisać. Zrób tak jak wyżej i będzie ok (zamień na tablicę znaków). Jeśli chcesz skorzystać z dobrodziejstw...
Pamięć jest zorganizowana w komórki 16-bitowe, objawia się to np tym że wskaźnik programu wskazuje na słowo (2 bajty) a nie na bajt. Wszystkie instrukcje muszą być więc wyrównane do granicy dwóch bajtów. Jakkolwiek z poziomu samego programu pamięć flash jest zorganizowana bajtami, więc spokojnie można w niej umieszczać tablice bajtów bez utraty pamięci....
Witam, Do pamięci zewnętrznej odwołujesz się przez zwykły wskażnik o adresie większym niż wewnętrzna przestrzeń adresowa RAM'u Więc aby stworzyć tablice musisz odwołać się przez wskażnik char* bufor = (char*)0x8000; // deklaracja adresu początkowego tablicy //--------------------------------------...
A masz ustawione na interfejsie z dhcp arp w trybie reply-only? Komputer z ustawionym adresem na stałe nie powinien znaleźć się w tablicy arp routera. Musisz go usunąć zanim przeprowadzisz test. Tym sposobem tylko urządzenia pobierające adres z dhcp znajdują się w tablicy arp.
Wiesz, tak naprawdę on nie ma pojęcia czy to tablica czy co. Po prostu dostaje adres i pisze po kolei zaczynając od niego po kolejne komórki aż do napotkania \0. Jeśli byś dał mu losowy zakres z pamięci, to po prostu jej zawartość zobaczysz od danego miejsca aż do pierwszego \0. Jeszcze inaczej - jak zrobisz 5 zmiennych i wskażesz na pierwszą, która...
Jeśli znasz rozmiar tablicy robisz coś takiego: [syntax=c]float (*ptr)[x][y] = (float (*)[x][y]) addr;[/syntax] I potem używasz: [syntax=c]float f = (*ptr)[x][y];[/syntax]
Z przykazań C: 1. Nazwa tablicy jest adresem do jej pierwszego elementu 2. Tablica znaków, to tablica znaków, a string to wskaźnik do pierwszego znaku w ciągu znaków zakończonego znakiem '\0' dlatego proponuję tablicę wskaników do znaku, gdzie każdy z tych wskaźników inicjalizujemy wartością NULL, a string przypisujemy dynamicznie z kopca char *tablica[34][22]...
Proszę o informacje, gdzie w nocie katalogowej można znaleźć informacje na temat priorytetów wykonywania przerwań, jeżeli wystąpią w tym samym czasie. Nie można, ale ten co ma niższy adres w tablicy wektorów wykona się pierwszy jak przyjdą w tym samym czasie. Co najwyżej możesz właczyć przerwania na początku obsługi aby umożliwić obsługę kolejnych...
No i już staje sie jasne. Przekazujesz adres zmiennej buffer ( (at)buffer ), co powoduje wskazanie wskaźnika do tablicy, nie zaś samej tablicy! Obowiązkowo masz przekazać adres pierwszego miejsca w tablicy ( (at)buffer ). Wciąż nie zmieniłeś na właściwe typów unsigned long -> longword ?
ad.1 Aby zrozumieć co się dzieje w tej linijce musisz dowiedzieć się co to są wskaźniki i rzutowanie typów. Jeżeli restart to tablica, to: [syntax=c]x=restart[0];[/syntax] przepisze pierwszy element z tablicy do zmiennej x. Nazwa tablicy to jednocześnie wskaźnik (adres w pamięci) do tej tablicy. I na przykład: [syntax=c]x=restart[1];[/syntax] zadziała...
Bo tab nie jest wskaźnikiem, tylko adresem tablicy. Tablica dwuwymiarowa w C (C++) to nie to samo, co tablica wskaźników do tablic (trzeci przypadek), chociaż odwołanie do elemntu wugląda tak samo (ale nie działa tak samo). W drugim przypadku tab jest adresem tablicy, której elemantami są tablice. Wobec tego *tab jest adresem pierwszej tablicy (wewnątrz...
Kolega wyżej podał bardzo fajną pętlę [syntax=avrasm] lpm R0,Z+ ;odczyt st Y+,R0 ;zapis dec R16 [/syntax] Jeśli chcesz kopiować od jakiegoś adresu w tablicy to do Z dodajeszsz offset przed rozpoczęciem petli a w r16 masz ilosc elementów do skopiowania. Jeśli chcesz więcej niz 256 to musisz zrobić licznik na dwóch rejestrach które będziesz dekrementował...
Dzień dobry Mam mały problem ze zmianą kolejności adresów czujników DS18B20. Mam tablicę uint8_t z adresami czujników. Każdy adres zajmuje 8 pozycji tablicy. Napisałem menu ustawień z możliwością zamieniania kolejności. W menu po wejściu w wybrany czujnik mogę przypisać mu adres ze "świeżo" przeskanowanej magistrali. Problem w tym, że o ile po zapisie...
Czyli w tych routerach tylko to byś wpisał i by działało ? Spotkałem się właśnie z tym, że się tak stosuje, ale nie do końca rozumiem jak to działa, ponieważ jak przeglądałem tablice routingu dynamicznego, to zawsze nawet te routery, które są podłączone tylko z jednym inny to tak samo miały opisane połączenia jak każdy inny w sieci. Na przykład dla...
komendy mozna zastapic tokenami, ktore sa indeksami do tablicy zawierajacej adres funkcji realizujacej dana komende. Czyli pobierasz token (np. 8-bitowy, jesli komend jest mniej niz 256), odczytujesz adres funkcji z tablicy pod tym indeksem i ja wywolujesz. Dzieki temu nic nie musisz sprawdzac, a kazda komenda jest wykonywana z takim samym opoznieniem....
Wynika ze sposobu działania sieci IP. Dobór trasy przez poszczególne urządzenia pracujące od warstwy L3 (czyli m.in. routery i komputery, ale nie switche i huby) dokonywany jest indywidualnie na podstawie posiadanej tablicy routingu (mniej lub bardziej rozbudowanej). Tablica routingu tworzona jest przede wszystkim na podstawie adresacji przypisanej...
Podstaw do WriteFile adres tej tablicy i jej całkowy rozmiar (osobno dla każdej tablicy) i za jednym zamachem masz zapisane :) char x[2][5] // chyba tak sie w C definiuje array:/ WriteFile(hFile, &x, 2*5*sizeof(char), ... int x[10][20][30] WriteFile(hFile, &x, 10*20*30*sizeof(int),...
VOID_INT_FP myptr = &foo A niby czemu? Przecież foo to nazwa funkcji i użycie samej nazwy to pobranie adresu funkcji. To samo dotyczy np. tablic.
Poszukaj sobie tablicy adresów do motki i zapisuj po kolei, chociaż na pewno (?) jest jakiś integrator, ale ja nie znam. Konwerter nic ci tu nie da, bo co nim zrobisz? Skonwertujesz po kolei i znowu będziesz miał 5 plików. Tyle, że .bin.
Nadeszła chyba pora zapoznać się , z Bascom-owym helpem :D Dim Adres As Word Dim Pozycja As Byte Do For Pozycja = 0 To 5 Adres = Lookup(pozycja , Tablica) Next Loop Tablica: Data 1% , 10% , 100% , 1000% , 10000% , 65535% Teraz będzie dobrze :?: Piotrek
Owszem, można do wskaźników w C przypisywać arbitralne wartości: const unsigned char tablica = { 0x86, 0x88, 0x90 }; int i = 2; *((char *) tablica[i]) = 10; /* przypisanie wartości 10 pod adres z i-tego elementu tablicy */ char *ptr = (char *) tablica[1];
Ta funkcja nie realizuje mrugania diody. Realizuje odczyt stanu. Jak większość poprawinie napisanych funkcji ze słówkiem Get w nazwie. Natomiast sposób wywołania funkcji z tymi konwersjami to masakra o pomstę do nieba wołająca. Jeśli to wszystko działa to prawdopodobnie przez przypadek. I jeszcze uwaga do ... trzeciej pozycji tablicy request ... adresem...
Przykro mi. Obawiam się, że niestety nie. Kilka razy też tak miałem i niestety nic nie dało się z tym zrobć. Jeżeli jest uszkodzona tablica alokacji to poprostu nie wiadomo w którym miejscu na hdd pliki (a raczej ich częsci) są zapisane (bo brak adresów w tablicy), Jeżeli plik nie jest porozrzucany na dysku to Ndd potrafi go jeszcze odzyskać, w innym...
Bez ampersanda. Nazwa tablicy już jest jej adresem (w zasadzie adresem jej pierwszego elementu): wsk_rejestr = rejestr;
Witam, widzę, że nauka poszła w las :roll: Możesz stworzyć wskaźnik który będzie wskazywał na ową tablicę, gdy zajdzie potrzeba, możesz zmienić adres wskaźnika, tak aby wskazywał na tą drugą tablicę. Pozdrawiam, GSM
Wpisujesz w adres przeglądarki m.tablica.pl i gotowe.
http://www.antylameriada.net/pwskazniki/ co do 29 ;) w akapicie "Operator pobrania adresu - &" Adres tablicy to jej lokalizacja w pamięci. Pobieramy ją stosując "t", użycie "&t" spowoduje pobranie adresu do adresu tablicy (typ char **, a nie wykorzystany w zadaniu char *). ;)
Nie. Dodawanie do ZH jest potrzebne, gdy górny bajt adresu jest inny w pierwszej a inny w ostatniej komórce tabeli.. jeśli tablica ma 2 elementy o adresach 0x8FF oraz 0x900, to bez tego dodawania uzyskasz adresy 0x8FF i 0x800 (brak dodania przeniesienia).
sam mu to powiedziales. liczby w formacie osemkowym zaczynaja sie dla kompilatorow od zera. szesnastkowe zaczynaja sie od 0x, binarne od 0b, osemkowe od 0 bufor1[i+i]=buforz[0]; //linia 2 bufor1[i+i+1]=buforz[1]; a co to za herezje? masz tutaj odpowiedz, czemu LCD sie krzaczy. konwertujesz liczbe jednocyfrowa. sila rzeczy...
mov dptr,#keyarr do rejestru DPTR (dwa bajty) ładowany jest adres pierwszego bajtu tablicy o nazwie Keyarr movc a,(at)a+dptr do akumulatora ładowana jest wartość spod adresu jaki jest w DPTR+wartość w akumulatorze. Jeśli przed wykonaniem tej instrukcji w akumulatorze bedzie wartośc 4 to po wykonaniu operacji w akumulatorze znajdzie się wartośc 17 (piąty...
Wtedy byłoby tak jak podają wszystkie podręczniki i fora, to znaczy: = WYSZUKAJ.PONOWO(num; nr_i_opis; 2; FAŁSZ) num oznacza komórkę z szukanym numerem, nr_i_opis stanowi teraz jedną tablicę złożoną z dwóch kolumn (adres lub nazwa tej tablicy), 2 oznacza, że wynik będzie z drugiej kolumny, a FAŁSZ (lub 0) oznacza, że funkcja ma znaleźć dokładnie to...
Wyrażenie unsigned aLiczby return aLiczby[3] && true ; jest błedny! Funkcje w c++ mogą zwracać przez nazwe tylko jedną zmienną, może to być tablica danych,bądz cokolwiek innego ale nigdy nie można zwrócić dwóch lub więcej zmiennych przez nazwe funkcji tak jak Ty to robisz. Nie rozumiem czemu kompilator pozwala na takie wyrażenie, zawsze jest...
Musisz sam powołać wskaźnik typu takiego, jakie dane przechowuje tablica, a potem wpisać do niego adres tablicy (nazwa tablicy jest wskaźnikiem na pierwszy element)
co to za procesor? może przypisz po prostu do rejestru adres tablicy, a następnie czytaj spod adresu. Niestety nie jest mi znany ten procesor.
Masz rację. Moja pomyłka, przepraszam (było rano). Powinno być: nr_bajtu_pamięci_ekranu = (x div 8 )+(y - 1) * 5 Przy edycji musiałem skasować te kilka znaków. Teraz chyba to działa. y to oczywiście numer wiersz dla piksela. Masz rację, że w asemblerze natywnie nie ma tablic dwuwymiarowych, ale bardzo łatwo jest oprogramować taką strukturę pamiętając...
Hmm, no nie do końca, bo bez podania tego atrybutu, adres tablicy już nie zaczyna się na początku pamięci ram.
Adres tablicy wybierasz pokrętłem umieszczonym na sterowniku. Na tylnej ściance obudowy jest mała pokrywa.
Wiec od konca. Adresy pamieci FLASH, EEPROM i SRAM pokrywaja sie. W zwiazku z tmy istnieja inne instrukcje assemblera umozliwiajace dostep do FLASH i SRAM. EEPROM nie jest mapowany w przestrzen adresowa procesora, do niego dostep odbywa sie za pomoca specjalnych rejestrow (z wyjatkiem XMega, gdzie EEPROM jest w przestrszeni adresowej). Dlatego nie istnieje...
ponieważ operujesz wskaźnikiem na strukturę musisz wskaźnik wyłuskać (komunikat błędu linia 16) i dopiero możesz się odwoływać. Masz dwie opcje: 1/ (*Bufor1).rozmiar=0; 2/ Bufor1->rozmiar=0; Przy stosowaniu operatora u8 i = 2; char* ch = "test"; char ch2 = i[ch]; // kompiluje się i jest równoważne ch[i] Jednocześnie oznacza...
Bo tab jest adresem tablicy, operator indeksu [] wyłuskuje element (to co jest pod adresem), więc jaki sens miało by dołożenie operatora * wyłuskującego element spod adresu skoro po prawej stronie masz już po prostu int'a? Jeśli chcesz się dobrać do adresu elementu tab[n] nalezy użyć &. Wtedy np. taka bezsensowna konstrukcja jak [syntax=c]cout <<...
Tutaj przypisujesz adres nowej tablicy: [syntax=cpp]tab=ntab;[/syntax] A tutaj tzn. po wyjściu z funkcji dodaj: [syntax=cpp]dodaj(tab,rozmiar);[/syntax] Tablica tab ma znów swój stary adres. Proponował bym jakoś zmienną wskaźnikową utworzyć, aby zapamiętać adres tablicy, a później po wyjściu z funkcji przypisać ją do tablicy tab.
No to nie wiem co Ci powiedzieć, bez kodu, ta zmienna ma w ogóle być przez jakieś funkcje modyfikowana czy powinna być nie ruszana podczas działania programu? Ja bym stawiał, że w jakiejś funkcji coś źle z jakimś pointerem robisz (przekroczony zakres) i on Ci pisze po tej tablicy przez przypadek. Same z siebie wskaźniki do funckji to jedynie Ci tyle...
nie możesz przesuwać elementów tablicy. Musisz wziąć wskaźnik na typ słowny (dwa bajty) i przypisać do niego adres elementu tablicy (czyli de facto adres tablicy + przesunięcie) i dopiero na takiej wartości dokonać przesunięcia. Inaczej kompilator widzi, że pracujesz ze słowem i nie pozwoli wyjść "poza" element tablicy. Przesunięcie musi być zrealizowane...
Blisko, ale tab[0] na nic nie wskazuje. tab[0] zawiera adres tablicy l1 jako liczbę całkowitą. Powiedz mi teraz więc, jaki sens ma taki porównanie: [syntax=c]if (tab[i] == 1)[/syntax] tab zawiera adresy tablic. To porównanie sprawdza, czy adres (czegoś) w pamięci, jest równy 1, wytłumacz mi sens takiego porównania? Skąd wiesz, jaki adres co będzie miało...
1. Zapisuj kod w znacznikach MOV AL,BX[SI] CMP AL,BX[DI] JG etykieta
Tym razem znów wprost ze standardu: Pomiędzy wskaźnikiem a tablicą jest taka różnica, że wskaźnik jest zmienną, a nazwa tablicy nią nie jest. Objawia się to właśnie tym, że wskaźnik możesz sobie przesunąć, lub przypisać mu adres wprost. Z nazwą tablicy tego nie zrobisz. Chyba, że Albert miał na myśli: (*tablica)++ :) -- Jak ktoś jest ciekawy: Niby &string8...
A tak w ogóle - definiujesz tablicę 3x4 a chcesz przekazać jako 3x3? Odnośnie przekazania - jeśli piszesz tab[a][b] to jest to wartość pod tego adresu tablicy, a nie cała tablica. A przecież do funkcji musisz przekazać całą.
Wg mnie powinieneś resetować po transferze adres tablicy źródłowej - w końcu jest on automatycznie inkrementowany. 4\/3!!
Witam Wg mnie to pętla for która indeksuje rejestr "biegnie" cały czas niezależnie czy coś nacisnąłeś czy nie i zwiększa adres stąd błędna kolejność (tak naprawdę to losowy adres zapisu) i "puste miejsca". Proponowałbym zwiększać adres po zapisie do tablicy wciśniętego przycisku oraz dodać if`a sprawdzającego przekroczenie adresu 8. np. if(porzycisk)...
Witam, potrzebuję wstawić do makra funkcję wyszukaj.pionowo, jednakże adres do tablicy zawiera datę, więc wygląda: "\\comp1\dane\" & "Dane " & Format(Now, "dd-mm-yy") & ".xls"" Problem jest w tym, że nie mogę takiej formuly wstawić jako adres tablicy, ponieważ występuje błąd. Jak można to obejść ?? Pozdrawiam
tablica adres tablica tablica stringi automapa adres
chrysler voyager diagnostyka emulator android czarny ekran internet telewizorze
instrukcja obsługi akumulatora instrukcja obsługi akumulatora
Xerox WorkCentre 6605 – komputer widzi drukarkę, ale nie widzi skanera po instalacji sterowników Demon RQ 580 – silnik mocno się grzeje na pełnym gazie mimo prawidłowej mieszanki, kolor świecy jasny kawy z mlekiem