logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Debuger w atmel studio i dziwne zachowanie może nawet błąd w as

squelch 12 Sie 2017 21:48 1065 5
  • #1 16638873
    squelch
    Poziom 11  
    Witam
    Śmiały zapis problemu ale to mi wyglada na błąd.
    Kod który napisałem sprowadza sie do takiej postaci
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    Na dole jest instrukcja na którą nastawiłem breakpointa jeśli zmienna jest równa 1 to zatrzymuje program.U góry nie ma żadnych poleceń przypisujacych wartość zmiennej. Program o dziwo sie zatrzymuje na breakpoincie. Jak to możliwe nie sadzę żebym w takim warunku popełniał błąd coś może jest nie tak z tym debugerem.

    Pozdrawiam
  • Pomocny post
    #2 16638912
    DarkMajster
    Poziom 11  
    Czy nie powinno być
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
    ?
  • Pomocny post
    #3 16638966
    Konto nie istnieje
    Konto nie istnieje  
  • Pomocny post
    #4 16639124
    Konto nie istnieje
    Konto nie istnieje  
  • Pomocny post
    #5 16639347
    BlueDraco
    Specjalista - Mikrokontrolery
    Ka[dz przyzwoity kompilator eliminuje instrukcje, które nigdy nie mają szansy się wykonać. Jeśli masz warunek zawsze fałszywy pod if, to blok pod tym if nie będzie w ogóle tworzony, Pokaż jak ten kod wygląda naprawdę, to może coś zobaczymy. Nie pokazałeś nawet deklaracji zmiennej.
  • #6 16642619
    squelch
    Poziom 11  
    Macie racje że ten kompilator optymalizuje kod już o tym kiedyś pisał mi Piotrus999 gdzie podał jeszcze przykład jak wykonuje się każda instrukcja w c jakie ma rozkazy w asm. Ale cóż nie pomyślałem o tym.

    Bardzo przepraszam za pisownie ale obecnie zamiast pracować na komputerze muszę pracować na telefonie a tu klawisze małe więc ciężko paluchem trafić

    Pozdrawiam
REKLAMA