Maciek Gajdzica - ucgosupl
Maciek Gajdzica - ucgosupl
  • Видео 119
  • Просмотров 135 907
6 Najważniejszych zastosowań asemblera w Embedded
Dołącz do webinaru i dowiedz się jak zacząć z asemblerem w embedded
➡️ ucgosu.pl/webinar
--------------------------------------------------------------
💻 Kursy Online dla programistów embedded:
➡ Git w Embedded: ucgosu.pl/git
➡ C dla Zaawansowanych: cdlazaawansowanych.pl/
➡ TDD w Systemach Embedded: tddembedded.pl/
Sklep: sklep.ucgosu.pl/
--------------------------------------------------------------
➡️ BLOG: ucgosu.pl/
➡️ FACEBOOK: ucgosupl?locale=pl_PL
➡️ GRUPA FB: groups/142342284619663?locale=pl_PL
--------------------------------------------------------------
Polecane filmy:
ruclips.net/video/XYXr1Pff6R0/видео.html - Czy warto uczyć się asemblera w 2024 roku?
ruc...
Просмотров: 564

Видео

Czy warto uczyć się asemblera w 2024 roku?
Просмотров 1,7 тыс.5 месяцев назад
Dołącz do webinaru i dowiedz się jak zacząć z asemblerem w embedded ➡️ ucgosu.pl/webinar 💻 Kursy Online dla programistów embedded: ➡ Git w Embedded: ucgosu.pl/git ➡ C dla Zaawansowanych: cdlazaawansowanych.pl/ ➡ TDD w Systemach Embedded: tddembedded.pl/ Sklep: sklep.ucgosu.pl/ ➡️ BLOG: ucgosu.pl/ ➡️ FACEBOOK: ucgosupl?locale=pl_PL ➡️ GRUPA FB: groups/142342284619663?lo...
[Zegar szachowy #12] Ostatnie poprawki
Просмотров 2897 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar szachowy #11] Tryb edycji
Просмотров 1607 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar szachowy #10] Predefiniowane tryby gry
Просмотров 1547 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar szachowy #9] Tryb fixed control, mappery, wzorzec MVC
Просмотров 2157 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git/ ucgosu.pl/promocja/
[Zegar szachowy #8] Dodajemy testy automatyczne
Просмотров 2257 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
Git wprowadza cywilizację do projektu - moja historia
Просмотров 3217 месяцев назад
Dołącz do kursu "Git w Embedded" ucgosu.pl/git Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź inne kursy online: cdlazaawansowanych.pl/ tddembedded.pl/
[Zegar Szachowy #7] Tryby gry + więcej wzorców projektowych
Просмотров 2468 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar Szachowy #6] Konfiguracja CMake i VS Code
Просмотров 4778 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar szachowy #5] Maszyna stanu
Просмотров 3538 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar Szachowy #4] Konfiguracja Czasu
Просмотров 3408 месяцев назад
Projekt na GitHubie: github.com/ucgosupl/chess_clock_v2 Sprawdź mojego bloga: ucgosu.pl/ Odwiedź mój sklep: sklep.ucgosu.pl/ Sprawdź kursy online: cdlazaawansowanych.pl/ tddembedded.pl/ ucgosu.pl/git
[Zegar szachowy #3]: Wybór trybu gry (interfejsy)
Просмотров 4888 месяцев назад
[Zegar szachowy #3]: Wybór trybu gry (interfejsy)
[Zegar szachowy #2]: Założenia projektu, pierwsze zmiany w kodzie
Просмотров 1 тыс.8 месяцев назад
[Zegar szachowy #2]: Założenia projektu, pierwsze zmiany w kodzie
Chat GPT pisze mi projekt w STM32 Cube?!
Просмотров 2,4 тыс.10 месяцев назад
Chat GPT pisze mi projekt w STM32 Cube?!
Konfiguracja projektu STM32 Cube + Git
Просмотров 1,1 тыс.Год назад
Konfiguracja projektu STM32 Cube Git
30 Devstories - 30/30: O kończeniu projektów
Просмотров 437Год назад
30 Devstories - 30/30: O kończeniu projektów
30 Devstories - 29/30: Czy programista embedded może pracować 4 dni w tygodniu?
Просмотров 693Год назад
30 Devstories - 29/30: Czy programista embedded może pracować 4 dni w tygodniu?
30 Devstories 28/30: Daj się poznać!
Просмотров 481Год назад
30 Devstories 28/30: Daj się poznać!
30 Devstories - 27/30: Korpo vs mała firma
Просмотров 775Год назад
30 Devstories - 27/30: Korpo vs mała firma
30 Devstories - 26/30: Czy programista embedded musi mieć studia?
Просмотров 1,3 тыс.Год назад
30 Devstories - 26/30: Czy programista embedded musi mieć studia?
30 Devstories - 25/30: Estymowanie zadań
Просмотров 401Год назад
30 Devstories - 25/30: Estymowanie zadań
30 Devstories - 24/30: Agile w Embedded
Просмотров 602Год назад
30 Devstories - 24/30: Agile w Embedded
30 Devstories - 23/30: Programista vs Biznes
Просмотров 530Год назад
30 Devstories - 23/30: Programista vs Biznes
30 Devstories - 22/30: Jakie języki powinien znać programista embedded?
Просмотров 1,6 тыс.Год назад
30 Devstories - 22/30: Jakie języki powinien znać programista embedded?
30 Devstories - 21/30: Biblioteki HAL vs Rejestry sprzętowe
Просмотров 1,4 тыс.Год назад
30 Devstories - 21/30: Biblioteki HAL vs Rejestry sprzętowe
30 Devstories - 20/30: Meetup Embedded
Просмотров 4142 года назад
30 Devstories - 20/30: Meetup Embedded
Devstories 19/30: Nie przemęczaj się!
Просмотров 7822 года назад
Devstories 19/30: Nie przemęczaj się!
Kiedy nie stosować TDD?
Просмотров 4962 года назад
Kiedy nie stosować TDD?
Specyfika testów w embedded
Просмотров 7802 года назад
Specyfika testów w embedded

Комментарии

  • @shogopl7663
    @shogopl7663 День назад

    Super bardzo sie podobało. Czyli rozumiem zeby zacząć od zera muszę ogarnąć język C/Stm32/Git. 😊

    • @ucgosupl
      @ucgosupl День назад

      Na początek potrzebujesz 5 rzeczy: - Język C - Jedna rodzina mikrokontrolerów - najlepiej STM32 - Podstawy elektroniki - Git - Własny projekt w którym wykorzystasz to wszystko w praktyce Polecam listę polecanych materiałów do nauki na moim blogu: ucgosu.pl/materialy-do-nauki-embedded/ I ten artykuł + w intro linki do dwóch kolejnych: ucgosu.pl/2024/03/jakie-projekty-robic-aby-najlepiej-rozwinac-swoje-umiejetnosci/ A jak już trochę się pobawisz z tutorialami i stwierdzisz, że chcesz się dalej rozwijać w tym kierunku - wtedy polecam rozejrzeć się za kursami.

  • @arcymocarz
    @arcymocarz 2 дня назад

    Bardzo elegancki wykład.

  • @damianwozniak3798
    @damianwozniak3798 25 дней назад

    😆 Z nauką programowania jest jak z elektrownia atomową w polsce. 😂 No niby można ale po co ? 🤣 Nikt Biosu do swojego komputera pisał nie będzie ani nowego OS do Smartfona. Szczególnie że lepsze wersje AI czy nawet CHAT GPT4.5 już potrafią pisać proste mniej lub bardziej programy jak "Komputer" Enterpraisowy z TNG. 😅 Wiec czy warto wogule uczyć się programowania ? gdy jeden dobrze napisany program rozwiązuje problem w open-soursie a po chyba 3 latach i tak jego kod jest dostępny w freewarze. 😂 Wiec czy aby programowanie to nie jest wogule strata czasu ? I jedynie bezrobotni z nadmiarem czasu mogą się uczyć programowanie hobbistycznie. 🤔 😂😂😂

  • @krzysiomisio4432
    @krzysiomisio4432 28 дней назад

    a ja mam inne pytanie (jak Ci się udało tak schudnąć? :D ) - też się z tym mierze

    • @ucgosupl
      @ucgosupl 24 дня назад

      Tak w skrócie - dzięki diecie. Dostałem rozpisany program i starałem się go w miarę trzymać.

  • @bezimienny1675
    @bezimienny1675 3 месяца назад

    Czy te interfejsy z wykorzystaniem wskaźników na funkcję są alternatywą dla funkcji wirtualnych i polimorfizmu w C++?

  • @bezimienny1675
    @bezimienny1675 3 месяца назад

    Czy VSCode można uzywać w takim wypadku naprzemian z Cube? Chodzi mi o to, czy będzie widział zmiany gdy użyję Cube'a do np. konfiguracji zegarów.

  • @shogopl7663
    @shogopl7663 4 месяца назад

    Ja mam pytanko czy po technikum elektronicznym można przejść na embedded? Jestem bliżej 40 i co prawda studiować nie zamierzam aczkolwiek programować bym chciał. Pracuję jako electronic test technician w UK ale chciałbym się rozwinąć. Pozdrawiam

    • @ucgosupl
      @ucgosupl 3 месяца назад

      Jak najbardziej, nawet poruszałem ten temat już na kanale. Zobacz live o rekrutacji i filmik o przebranżowieniu na programistę embedded. Wszystko znajdziesz na tej playliście: ruclips.net/video/13a8wqFTYbw/видео.html

  • @zbysiu100
    @zbysiu100 4 месяца назад

    Każdy infromatyk łasy na kasę jest. Kochają kasę ponad życie.

  • @ring0s
    @ring0s 4 месяца назад

    Mój C3 też się tak zachowywał, ale dało radę go zaprogramować z Arduino IDE bez problemu i przestał się resetować. Jakkolwiek nie udało mi się go zaprogramować z VSC, ale ja jestem cienki w te klocki.

  • @Cyklonus
    @Cyklonus 4 месяца назад

    👍👍

  • @jaroslawsobolewski8100
    @jaroslawsobolewski8100 4 месяца назад

    Pisząc dawno, dawno temu programy w CA Clipper język który powstał w C++, robiłem czasami wstawki assemblerowe, aby przy dekompilacji np. Valkirią program się "wykrzaczał" lub aby ukryć niektóre procedury lub funkcje przed debagiem , ale znajomość assemblera wg. mnie to podstawa informatyki. Serdecznie pozdrawiam. Życzę sukcesów. 😀

  • @jaroslawsobolewski8100
    @jaroslawsobolewski8100 4 месяца назад

    Język maszynowy (I poziomu) bezpośrednio wykonywany to wiedza dla magików komputerowych, wszyskie skoki, przerwania, adresowanie, stosy itp. to trochę za trudne dla laików. Sam pisałem któtkie programy w asm lecz przeszedłem na kopilowalne języki programowania, bo dały mi możliwość monetyzacji wiedzy, czyli zarabianie na programowaniu. Jeżeli tylko jesteś w stanie się podzielić wiedzą , to z góry dziękuję i pozdrawiam.😀

  • @xarax7950
    @xarax7950 4 месяца назад

    w asm dobrze widać jak działa keyword restrict w C

  • @xarax7950
    @xarax7950 4 месяца назад

    no assmebler jest w debugerze GDB/LLDB disass, można proównac efektywność kodu w c/cpp, też kompilator gcc z flagami generuje kod w asm, zauważyłem że gdy w pliku wpisze stałe działanie matematyczne to kompilator je wykona, by za każdym razem cpu go nie wykonywał, nie było instrkucji idiv w asm (x86asm)

  • @xarax7950
    @xarax7950 4 месяца назад

    a ja zrozumiałem i mógłbyś nawet mówić więcej szczegółów technicznych przyda sie, architektura CPU, mikrooperacje z których składają się rozkazy, zwianie stosu, przerwania, procesy... w mikrokontrolerach podobno można sobie "wjechać" stosem na sterte i nadpisać dane (jeśli zaolokowane)

  • @imcwaszec937
    @imcwaszec937 4 месяца назад

    Nawet nie wiedziałem, że taki kanał istnieje i to w 2024 roku 😆 Małe uzupełnienie do tematu ładowania systemu: program bootujący znajdujący się w bootsektorze nośnika np. dysku twardego nie ładuje systemu operacyjnego, tylko służy do wczytania i oddania sterowania do kolejnego elementu ładującego system. W DOS-ie był to IO.SYS, który potem sam ładował system umieszczony np. w pliku MSDOS.SYS. Dlatego to obecnie zostało skrócone i cały program bootujący znajduje się na ścieżce 0 dysku (która wcześniej była w zasadzie pusta). W bootsektorze można umieścić program, który przechodzi bezpośrednio do trybu wirtualnego pracy procesora i ustalić tym samym hierarchię procesów. Przykładowo rdzeń systemu może załadować się na poziomie Ring 0, zaś sterowniki na Ring 1, Ring 2 lub nawet na Ring 3. Na przykład w Windowsach jest zastosowane (przynajmniej do wersji na jakich ja pracowałem) rozdzielenie kody systemu na Ring 0 i na Ring 3 i na ring 3 chodziły aplikacje użytkownika. Oczywiście nie muszę chyba mówić specowi jak to może działać: otóż można z boota załadować program przechodzący na Ring 0 przygotowujący część tylko ramek pamięci dla systemu, zaś w pozostałej części tworzący zasoby dla debuggera. W ten sposób uzyskać można było pełną kontrolę nad systemem. Programowanie takie ma raczej mało wspólnego ze wspomnianymi mnemonikami CONST-ami i STATIC-ami, za to wymaga znajomości obsługi rejestrów kontrolnych i debugujących procesora. Trzeba bowiem wiedzieć jak tworzyć bramki wywołań pomiędzy segmentami chodzącymi w różnych trybach, w jaki sposób przygotować bramki dla wywołań przerwań i obsługi błędów. A błędów będzie tu dużo więcej niż we wspomnianym materiale, bowiem instrukcje procesora podzielone są na podzbiory związane z bezpieczeństwem i specjalnym zadaniem w systemach operacyjnych, czyli pewne podzbiory nie będą działać na wszystkich Ringach. Czy można napisać kod w asemblerze, który będzie lepszy niż w C? Oczywiście i w szczególności ja miałem tego rodzaju zadanie polegające na zaimplementowaniu około setki różnych procedur pakujących pliki wykonywalne czyli DIET, PAK/UNPAK, PKLITE itp., które będzie wielokrotnie szybsze niż kod z jakiegoś kompilatora C/C++. Aby to zrobić należało pozbyć się z kodu lub inaczej rozmieścić instrukcje powodujące blokady generowania adresu (AGI), przeładowywanie prefetcha, a także setek niepotrzebnych skoków (związanych z wieloma "IF-ami"). Takie rozwiązania pokazują pazur w przypadku, gdy mamy do przejrzenia cały dysk twardy pełen plików i wkurzonego usera nie chcącego czekać całego tygodnia na wyniki. Ale najciekawsze jest to, że po kilku latach pracy z takimi programami asembler ze swoimi "zabezpieczeniami głupotoodpornymi" przestaje być po prostu do czegokolwiek potrzebny, bo człowiek zaczyna swobodnie rozumieć kod i pisać bezpośrednio w kodzie maszynowym czyli hexami. Pozdrowienia dla miłośnika asemblerów 😎

  • @arcymocarz
    @arcymocarz 4 месяца назад

    Niezbyt duzo zrozumiałem, w grach typu doabolo czy hoi3 byl używany assembler

  • @TheNecroMachine
    @TheNecroMachine 4 месяца назад

    Wiem, że straszny offtop, ale jakiego fotela używasz?

    • @ucgosupl
      @ucgosupl 4 месяца назад

      Ergohuman - trochę drogi, ale super wygodny i ma dużo stopni regulacji. Mam go już ze 4 lata, nic się w nim nie niszczy. Także spokojnie mogę polecić.

    • @embeddedGarage
      @embeddedGarage 4 месяца назад

      Mam innej firmy, ale bardzo podobnej budowy. Siatka zamiast pianki to jest złoto! szczególnie w upalne dni. Można usiąść spocony i wyschnąć :)

  • @Waldemar_Pachol_official
    @Waldemar_Pachol_official 5 месяцев назад

    Dzień dobry! 2:22 Jedna linijka kodu na kilka instrukcji asm? Kodowałem w 6502 i 68000 ale nie przypominam sobie. Były co prawda edytory dające możliwości tworzenia pseudoinstrukcji bazując na tworzeniu makr, ale to chyba nadal nie to, bo tam nadal jedna linijka kodu asm generowała jedną instrukcję kodu maszynowego. Dość podobnie z „operacjami atomowymi”, :) kiedyś wystarczyło zablokować choćby poprzez zwykłe SEI przerwań, by te nie wystąpiło w momencie zapisywania nowego wektora do dwubajtowego rejestru, który go przechowywał i w efekcie by przerwanie nie skoczyło gdzieś w odchłań pamięci. A po zapisaniu poprawnego wektora CLI i problemów nie było. Nie wiedzieć czemu później utrudniono to sobie poprzez „operacje atomowe”. :)

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      W asemblerze na ARM coś takiego się dzieje np. przy operacjach load/store z adresów ram. Wtedy w asemblerze piszemy load adres, a on nie może w instrukcji umieścić stałej 32-bitowej i rozbija na kilka instrukcji. Adres jest umieszczony we flashu i robi load adresu a potem load danej spod adresu. Będę to dokładnie omawiał w kursie i chyba zrobię też na ten temat filmik na yt, bo sam byłem zaskoczony kiedy pierwszy raz to odkryłem.

    • @Waldemar_Pachol_official
      @Waldemar_Pachol_official 5 месяцев назад

      @@ucgosupl Dziękuję za odpowiedź. Nie kodowałem niestety nic w ARM, ale z tego co Pan opisał, to wygląda to bardziej na makro niż konkretny mnemonik wykonujący konkretną czynność (z podkreśleniem na wygląda :) ). Np w 6502 nie było operacji mnożenia i dzielenia, no może za wyjątkiem dwójki (ROL oper i ROR oper), ale można sobie było napisać makro by w 6502 mieć DIVU i realizować dzielenie. :) I wtedy jedna operacja (DIVU) realizowała kilka bądź kilkanaście linijek kodu na konkretnych danych wejściowych.

  • @TymonZagawa
    @TymonZagawa 5 месяцев назад

    Pracuję jako inżynier systemów. Odpowiadając na pytanie - moim zdaniem - oczywiście że tak. Nawet jeśli nie dla realnych projektów, to po to, by rozjaśniło to umysł. Współpracuje z programistami z których część nie ma zielonego pojęcia o działaniu komputera - nie wiedzą jak działa pamięć komputera, jak działa CPU, jak zwolnić RAM, etc. Cytując Stonogę "To jest dramat k****". Nauka zagadnień niskopoziomowych - działanie procesora, asemblera, nauka C - powinna stanowić credo każdego informatyka. Nie chodzi tylko o to by zarabiać ale i być kompetentnym. Tak ja uważam. Pomijam fakt, że przy pewnych zagadnieniach asembler jest wciąż żywy, jak programy rozruchowe czy miejsca gdzie serio liczy się czas. Można zresztą pisać w C i robić wstawki w asemblerze jak sam powiedziałeś.

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Dokładnie tak!

  • @ban5176
    @ban5176 5 месяцев назад

    Oficjalnie rozpoczynam dyskusje: Assembler czy Assembly? Według mnie Assembly to język programowania a Assembler to program przetwarzający kod w Assembly na kod maszynowy. Końcówka -er zgadzałaby się z innymi nazwami programów takich jak: interpreter, compiler, linker, debugger, disassembler etc. Spotykałem się również z nazwą "język Assemblera" - w domyśle język którym posługuje się assembler i miałoby to jakiś sens ale nadal dziwnie brzmi. Osobiście pisałem pare programów (głównie firmware) do MC68K, ARM32 i obecnie ARM64 i jakoś zawsze mówiono Assembly. Co sądzicie?

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Nawet o tym mam jedną lekcję do kursu. Po angielsku jest assembly language i assembly czyli język asemblera i asembler jako kompilator na kod maszynowy. I faktycznie jak szukamy informacji w necie to może powodować problemy. Potocznie mówi się asembler i zwykle z kontekstu wiadomo o który chodzi. Nie ma sensu używać długiej formy. A przy pisaniu używam spolszczonej formy czyli przez jedno s.

    • @jaroslawfrymark5177
      @jaroslawfrymark5177 4 месяца назад

      Powinno się mówić/ pisać język asemblera i program asemblujący ale najczęściej skracamy i używamy asembler a odbiorca z kontekstu powinien się domyślić o co chodzi

  • @pacanosiu
    @pacanosiu 5 месяцев назад

    poleć na profesce w kursie, każda instrukcja procesora (tak to nazwane?) po kolei niczego nie zapomnij, elo osobiście nie zamierzam ale na pewno się przyda przyszłym programistom assemblera :D

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Dzięki za radę, dokładnie tak będzie. Rozumiem że chodzi o każdą instrukcję na każdą rodzinę procesora, po co zatrzymywać się na jednej :D A tak na serio to da się podejść do tematu pragmatycznie. Zawsze są grupy instrukcji odpowiadające za podobne operacje i tylko trzeba gdzieś listę instrukcji dorwać dla odpowiedniego procka.

  • @undefined_cat
    @undefined_cat 5 месяцев назад

    Zrobilem kompilator C i asembler pod x86 i nie polecam, nie ma roboty na to

  • @nowy5
    @nowy5 5 месяцев назад

    ja nawet nie wiem czy początkującemu warto męczyć się z bardzo trudnym C++ skoro jest wiele łatwiejszych języków, a C++ powoli umiera

  • @lordwiadro83
    @lordwiadro83 5 месяцев назад

    Ja zaluje, ze na poczatku lat 2000 kodowalem w Assemblerze. Moglem wykorzystac tamten czas na np. Web dev, czy Jave. Nigdy mi sie tamta wiedza nie przydala.

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Jasne, jeśli idziesz w webdev to asemblera bym nie polecał. Najwyżej jako ciekawostka, żeby wiedzieć co się dzieje pod maską. Tutaj omawiamy temat pod kątem systemów embedded i asembler jako dodatek jest super.

  • @xarax7950
    @xarax7950 5 месяцев назад

    jak bym chiał być programistą embedded, studia są trudne, zaoczne nie mają znaczena dla pracodawcy, dziękuje za ten film!

  • @hannahprobably5765
    @hannahprobably5765 5 месяцев назад

    Szkoda czasu i co więcej pracy w Asm jest bardzo malo.

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Ja bym nikomu nie radził szukać stanowiska programisty ASM. To język pomocniczy używany przez programistów C w pewnych konkretnych sytuacjach i uczysz się go raczej żeby być zatrudnionym jako programista C.

  • @robertsyzdek8810
    @robertsyzdek8810 5 месяцев назад

    Osobiście uczę się assemblera dla procesora do game boya, fajna zabawa :)

  • @kobikobiaszu7055
    @kobikobiaszu7055 5 месяцев назад

    Uczyć kiedy zajdzie taka potrzeba

  • @polskiprogramista7238
    @polskiprogramista7238 5 месяцев назад

    Ja myślę, że tak - 25 lat jako programista, tak...

  • @msalamon
    @msalamon 5 месяцев назад

    No przyznam się, że mi serce stanęło jak wymieniłeś te mity - myślałem, że je całkowicie obalisz 😂

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Jak już znajdę taką cudowną receptę, żeby je obalić to dam znać :D

  • @kamilkamil5521
    @kamilkamil5521 5 месяцев назад

    MacieeeK, to ty? ;-) GIT!

  • @TheHaTee12
    @TheHaTee12 5 месяцев назад

    Maćku coż za metamorfoza! Na duży plus oczywiście. Pozdrawiam 😎

  • @youdntube
    @youdntube 5 месяцев назад

    VSCode ma w dzisiejszych czasach świetny dodatek do Assemblera. Nazywa się "ASM Code Lens". . Można skakać po labelach. . Widać od razu co, gdzie jest używane (nad zmiennymi wyskakuje licznik ile razy dana zmienna został wykorzystana, a jak się w to kliknie to pokazuje gdzie była użyta) . Szczególnie przydatne, gdy trzeba coś poprawić w przejętym kodzie sprzed ładnych paru lat, bo nikt inny nie chciał się tego podjąć.

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Dzięki za polecenie. Ja używam zwykłego pluginu z kolorowaniem składni do ARM Assembly, ale sprawdzę

  • @smiechu47
    @smiechu47 5 месяцев назад

    Ile schudłeś od tego filmu?

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      prawie 30kg

  • @Bareizm
    @Bareizm 6 месяцев назад

    O tym materiale można powiedzieć tyle: kto tego nie wiedział, ten nadal nie wie, a kto wiedział, oglądać nie musiał.

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Jeżeli coś jest niejasne - polecam sprawdzić repo na githubie i przejrzeć sobie na spokojnie kod. Oglądając sam filmik faktycznie może być niejasne. Tym bardziej, że teraz robimy na raz n rzeczy, które przygotowywaliśmy przez kilka poprzednich odcinków.

  • @Bareizm
    @Bareizm 6 месяцев назад

    Nie mogę znaleźć linku do filmu o observerze. Można prosić o wrzutkę?

    • @ucgosupl
      @ucgosupl 5 месяцев назад

      Faktycznie. Przeszukałem całe archiwum i nie ma obserwera w filmach. Był tylko na live'ach i w kursach. Tutaj masz w takim razie linka do nagrania z live, gdzie pokazuję przykład: ruclips.net/video/J7kk5T8dWA4/видео.html Jak by timestampy były źle - o obserwerze jest od około 1h28m do 1h42m

  • @Bareizm
    @Bareizm 6 месяцев назад

    Dlaczego definicje pinów zostały umieszczone w pliku hd44780.c, a nie hd44780.h?

    • @ucgosupl
      @ucgosupl 6 месяцев назад

      Ze względu na ukrywanie prywatnych informacji modułu. Header zawiera publiczne definicje wykorzystywane przez inne moduły. Nie chcemy dawać innym modułom wiedzy o konkretnych pinach naszego wyświetlacza, nie chcemy żeby używały je w swoim kodzie i przy ewentualnych zmianach nie chcemy modyfikować zbyt dużo plików. Dlatego w publicznych headerach lepiej dawać tylko to co faktycznie jest niezbędne zewnętrznym modułom.

    • @Bareizm
      @Bareizm 6 месяцев назад

      @@ucgosupl wszystko jasne. Dziękuję za wyjaśnienie.

  • @trzeborb4320
    @trzeborb4320 6 месяцев назад

    Świetny odcinek Maćku, sporo cennej wiedzy. Dzięki.

  • @FilippoCerta
    @FilippoCerta 7 месяцев назад

    polecam, najwiekszy boss embedded jakiego znam

    • @FilippoCerta
      @FilippoCerta 7 месяцев назад

      w sensie najlepszy, co do sylwetki to ogladalem duzo poprzednich filmow i gratuluje rowniez przemiany fizycznej, widac tez wiecej energii!:)

    • @ucgosupl
      @ucgosupl 7 месяцев назад

      Dzięki :)

  • @ksideks
    @ksideks 7 месяцев назад

    Dobra robota 💪 Szkoda że już koniec 😢 To może teraz jakiś prototyp z IoT?

    • @ucgosupl
      @ucgosupl 7 месяцев назад

      Zobaczymy :)

  • @ksideks
    @ksideks 7 месяцев назад

    I Maciek znowu daje porcję ciekawych i przydatnych rzeczy.

  • @ksideks
    @ksideks 8 месяцев назад

    Maciek znowu dajesz dobrą dawkę rzeczowych wiadomości. Jeden z lepszych tutoriali. 👏👏👏

    • @ucgosupl
      @ucgosupl 8 месяцев назад

      Dzięki! Cieszę się, że się podoba. Może w przyszłości uda się w ten sposób nagrać kolejne projekty.

  • @FilippoCerta
    @FilippoCerta 8 месяцев назад

    są jakieś dobre materiały w internecie jak przechwycić wzorce projektowe z języków wysokopoziomowych do c?

    • @Robo12555
      @Robo12555 8 месяцев назад

      Miro Samek ma bardzo dobre materiały

    • @ucgosupl
      @ucgosupl 8 месяцев назад

      Mówię trochę o tym w CdZ i ostatnio był live dla kursantów. Kiedyś pisałem artykuł o kilku wzorcach: ucgosu.pl/2019/02/wzorce-projektowe-przydatne-w-systemach-embedded/ Jest też książka Bruce Powella Douglassa - Design Patterns for Embedded Systems. Mam co do niej trochę mieszane uczucia (więcej piszę na discordzie, na kanale live-qa - jak dobrze pamiętam to masz dostęp), ale to jedyna książka o wzorcach w embedded więc i tak warto poznać. A tak to polecam przede wszystkim tą stronę: refactoring.guru/design-patterns Tam są na chłopski rozum wytłumaczone wzorce obiektowe z rysunkami, przykładami itd. Najlepiej poczytać i zastanowić się, czy mogę to jakoś wykorzystać w embedded. Tylko musisz mieć na uwadze, że nie wprowadzisz wzorca dokładnie tak samo ze strukturą obiektów, dziedziczeniem itp. Chodzi bardziej o mechanizm.