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

Kodowanie programu 8051: adresy, akumulator, PSW po wykonaniu

Test Driver Skoda 15 Lut 2007 18:01 1437 8
REKLAMA
  • #1 3575739
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    W pamięci programu począwszy od adresu 1234H umieszczono następujący program:

    MOV PSW, #00001000B
    MOV A, #07H
    MOV R1, #136
    ADD A, R1

    Zamień powyższe rozkazy na ich kody i umieśc je na rysunku obok. Wszystkie liczby w pamięci należy przedstawic w postaci szensastkowej. Obok każdego bajtu w pamięci umieśc jego adres.
    Jaka będzie zawartośc akumulatora po wykonaniu powyższego programu szesnastkowo i dziesiętnie?
    Jaka będzie zawartośc rejestru PSW po wykonaniu powyższych rozkazów?
  • REKLAMA
  • #2 3575745
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    W pamieci pod adresem 2482H znajduje się rozkaz skoku:
    SJMP START
    START jest etykietą związaną z komórką pamięci o adresie 2482H. Jaka jest zawartośc komórek pamięci zawierających wspomniany rozkaz skoku (wpisz w rysunku obok w postaci szesnastkowej), przedstaw sposób w jaki zostały wyznaczone poszczególne bajty wpisane do rysunku.
  • REKLAMA
  • #3 3575755
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    Wypełnij na rysunku zawartośc bajtów związanych z rozkazem LCALL POOPR umieszczonym w pamięci pod adresem 4444H. START jest etykietą związaną z komórką pamieci o adresie 3355H. Omów krok po kroku procedurę wykonywania w kontrolerze 8051 w związku z wykonywaniem powyzszego rozkazu LCALL (uwzględniając podane liczby)
  • #4 3575763
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    Po co w systemie mikroprocesorowym stosuje się przerwania?

    Moderowany przez oldboy:

    Scalono 4 tematy

  • REKLAMA
  • #5 3575790
    histeria
    Poziom 19  
    Posty: 314
    Pomógł: 18
    Ocena: 24
    Co to "elektroda" stała się forum egzaminacyjnym.Tego typu zadawanie
    pytań jest chyba nie na miejscu.
  • #6 3575798
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    Umieściłem to w dziale - Początkujący, Laborki, Teoria, Referaty, nie chcesz to nie dopowiadaj.
  • REKLAMA
  • #7 3575850
    histeria
    Poziom 19  
    Posty: 314
    Pomógł: 18
    Ocena: 24
    Jakie zadanie postawisz pod nr.5.Może ilością postów zdobywasz punkty.
    Ile będzie zadań?.
  • #8 3579366
    Test Driver Skoda
    Poziom 13  
    Posty: 111
    Pomógł: 3
    Ocena: 2
    W przeciwieńswie do ciebie nie zdobywam punktów pisaniem postów bo nie bawi mnie coś takiego.
    Miałem nadzieje że ktoś może wie jak to rozwiązac bo ja na dzień dzisiejszy niestety nie daję sobie z tym rady.
    Jak ci sie cos nie podoba to zabieraj swoje zabawki, nikt na siłe cie tu nie trzyma.

    Moderowany przez oldboy:

    Regulamin

  • Pomocny post
    #9 3579857
    olekewaagata
    Poziom 25  
    Posty: 638
    Pomógł: 64
    Ocena: 28
    ORG 1234H

    1234 75D008 MOV PSW, #00001000B
    1237 7407 MOV A, #07H
    1239 7988 MOV R1, #136
    123B 29 ADD A, R1
    END

    To jest pierwsze zadania po kąpilacji, każdy kąpilator wytwarza plik lst gdzie jest rozpisane co i gdzie się znajduje.
    Pierwsze cztery kolumny to adresy bajtów programu, a nastepne kolumny to program w HEX czyli właściwy program. Wystarczy taki przykład skąpilować i jesli potrzeba wartości rejestrów to uruchomić go na dowolnym symulatorze i w symulatorze odczytać potrzebne dane.
    Tak proste przykłady można również rozwiązać bez kąpilatora i symulatora ale to już inna para kaloszy.

    Moderowany przez oldboy:

    Ortografia, regulamin

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy kodowania programu dla mikrokontrolera 8051, w którym w pamięci programu od adresu 1234H umieszczono instrukcje: MOV PSW, #00001000B; MOV A, #07H; MOV R1, #136; ADD A, R1. Zadaniem jest zamiana tych rozkazów na kody maszynowe w formacie szesnastkowym wraz z adresacją bajtów w pamięci. Ponadto omawiane jest określenie zawartości akumulatora (A) po wykonaniu programu w systemie szesnastkowym i dziesiętnym oraz zawartości rejestru PSW. Wskazano, że kody maszynowe dla tych instrukcji to kolejno: 75 D0 08 (MOV PSW, #08H), 74 07 (MOV A, #07H), 79 88 (MOV R1, #88H), 29 (ADD A, R1). Po wykonaniu instrukcji akumulator zawiera wartość 9FH (159 dziesiętnie), a rejestr PSW pozostaje z ustawionym bitem 3 (00001000B). Podkreślono, że takie zadania można rozwiązać zarówno ręcznie, jak i przy pomocy kompilatora i symulatora 8051, które generują pliki lst z adresami i kodami maszynowymi. W dyskusji pojawiły się także pytania o inne instrukcje i ich kodowanie oraz o zastosowanie przerwań w systemach mikroprocesorowych, jednak główny wątek dotyczył konwersji instrukcji i analizy zawartości rejestrów po wykonaniu programu.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA