KWALIFIKACJA ELM2 + ELM5 - CZERWIEC 2011

PYTANIE NR 16.
Rozkaz CLR P1.7 oznacza
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
CLR to rozkaz kasujący (czyszczący) wskazany bit. Zapis P1.7 oznacza bit 7 portu P1, czyli konkretną linię wejścia/wyjścia. Wykonanie CLR P1.7 ustawia tę linię w stan 0 (niski), a nie w stan 1 ani nie operuje na komórce pamięci o adresie 1.7.

Pełne wyjaśnienie:

Rozkaz CLR w asemblerach mikrokontrolerów spotykanych w edukacji (szczególnie w kontekście klasycznych układów z adresowaniem bitowym) oznacza wyzerowanie wskazanego elementu. Gdy operatorem jest bit, efekt jest jednoznaczny: dany bit zostaje ustawiony na 0.

Zapis P1.7 należy czytać jako: bit 7 portu P1 (czyli 8. linia portu, licząc od 0 do 7). Port P1 jest rejestrem/portem wejścia–wyjścia, a ".7" wskazuje konkretną linię (bit) w tym porcie. Dlatego wykonanie CLR P1.7 oznacza zerowanie linii 7 w porcie P1 (wymuszenie stanu niskiego na tej linii, jeśli jest skonfigurowana jako wyjście).

Odpowiedź "ustawienie linii 7 w porcie P1" jest błędna, bo ustawienie na 1 to operacja przeciwna do kasowania bitu (typowo realizowana inną instrukcją lub innym mnemonikiem). Odpowiedzi o "skasowaniu/załadowaniu komórki o adresie 1.7" wprowadzają mylące założenie, że zapis z kropką opisuje adres pamięci. W tym typie składni kropka wskazuje bit w rejestrze/porcie, a nie adres bajtowy pamięci.

W praktyce takie zerowanie bitu wykorzystuje się np. do wyłączania elementów sterowanych z portu (LED, tranzystor, przekaźnik), do wymuszania bezpiecznych stanów podczas startu programu oraz do czyszczenia bitów sterujących przed ustawieniem nowej konfiguracji.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Instrukcja CLR (clear) służy do wyzerowania wskazanego elementu. W zależności od składni może zerować bit, akumulator lub inny rejestr. Gdy operand wskazuje konkretny bit, efekt to ustawienie go na 0.
Zapis P1.7 oznacza bit 7 portu P1, czyli konkretną linię wejścia/wyjścia w 8-bitowym porcie. Kropka nie oznacza "adresu z częścią dziesiętną", tylko wybór pojedynczego bitu w porcie.
Bo CLR to operacja "clear", czyli skasowanie bitu do zera. Jeśli dana linia portu pracuje jako wyjście, bit portu bezpośrednio wpływa na poziom logiczny na pinie, więc po CLR otrzymujesz stan 0 (niski).
Nie zawsze. Zależy od sposobu podłączenia LED (do masy czy do zasilania) i tego, czy LED jest aktywna stanem wysokim czy niskim. CLR zapewnia stan logiczny 0 na linii, ale "wyłączenie" zależy od hardware.
Najczęściej myli się CLR z operacją ustawiania bitu na 1 (bo kojarzy się z "ustawianiem stanu"). Drugi błąd to uznanie zapisu z kropką za adres pamięci. W zadaniach egzaminacyjnych trzeba rozpoznać, że chodzi o bit portu.
Zerowanie bitu dotyczy pojedynczego bitu w rejestrze/porcie (np. P1.7). Kasowanie komórki pamięci zwykle dotyczy całego bajtu (8 bitów) pod adresem. W wielu asemblerach zapis typu P1.7 wskazuje bit, a nie adres bajtowy.
Gdy trzeba sterować pojedynczym sygnałem bez wpływu na pozostałe linie portu, np. włączanie/wyłączanie wybranego wyjścia, generowanie impulsu, ustawianie sygnału sterującego peryferium. Operacje bitowe są też czytelne w kodzie.
Należy zajrzeć do rozdziału Instruction Set lub "zestaw instrukcji" w dokumentacji mikrokontrolera/assemblera. Szukasz hasła CLR i sprawdzasz, jakie operandy dopuszcza (bit, rejestr, akumulator) oraz jaki jest efekt (ustawienie na 0).
W numeracji bitów portu standardowo zaczyna się od 0, więc bity to 0…7. Oznacza to, że P1.7 jest "ósmą" linią w sensie kolejności, ale ma numer 7. Na egzaminie ważne jest, że to najwyższy bit portu.
Najpierw rozpoznaj słowo kluczowe: CLR = clear = wyzeruj. Potem operand: P1.7 to bit portu (kropka → wybór bitu). Z tego wynika: "zerowanie linii 7 w porcie P1". Unikaj odpowiedzi o "adresie 1.7".
info

Statystycznie 46% uczniów zna prawidłową odpowiedź. trudne

Eksperci podkreślają: "CLR to rozkaz kasujący (czyszczący) wskazany bit."

Źródła:

  • Intel, "MCS-51 Microcontroller Family User's Manual" (Instruction Set / Bit Instructions: CLR bit) – rozdział o zestawie instrukcji
  • Atmel/Microchip, "AT89S51 Datasheet" (Instruction Set Summary / opis instrukcji CLR oraz operacji na bitach portów) – sekcja o instrukcjach
  • Keil, "C51 Macro Assembler User's Guide" (Instruction Set Reference: CLR oraz notacja operandów bitowych typu P1.7) – sekcja referencyjna asemblera

Materiały:

  • Dokumentacja zestawu instrukcji używanego mikrokontrolera (sekcja instrukcji bitowych)
  • Notatki z adresowania bitowego rejestrów SFR i portów I/O
  • Proste ćwiczenia laboratoryjne: ustawianie i zerowanie linii portów oraz obserwacja na diodzie/oscyloskopie

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego