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

DSM-51 Assembler-rozkazy,dodawanie w BCD i z użyciem U2,wartości wskaźników

galgann 01 Sty 2012 14:42 4380 3
REKLAMA
  • #1 10333542
    galgann
    Poziom 16  
    Posty: 233
    Ocena: 3
    Witam, aktualnie na pracowni wałkujemy DSM-51 i jest dla mnie sporo niewiadomych i prosiłbym o wyjaśnienie/pomoc. Do rzeczy, pierwsza sprawa;
    - sterowanie diodą i brzęczykiem, korzystałem z poniższego kodu:
    LED EQU P1.7
    BUZZER EQU P1.7
    LJMP START
    ORG 100H
    START:
    LOOP:
    CPL LED
    CPL BUZZER
    MOV A,#10 ;czekaj czas 10*100ms=1s
    LCALL DELAY_100MS
    LJMP LOOP
    Opis: definicja portów, włącz diodę/brzęczyk, powtórz to wiem. Pierwsze pytanie to jak jest odmierzany czas, przez który czeka 1s?


    Kolejna sprawa. Na ćwiczeniu miałem podany poniższy kod:
    LCALL LCD_CLR
    LCALL WAIT_KEY
    SWAP A
    MOW R0,A
    LCALL WAIT_KEY
    XRL A,R0
    LCALL WRITE_HEX
    MOV A,R0
    Program czeka na wybranie liczby heksadecymalnych z klawiatury i wynik podaje na LCD.

    Pierwsza część dotyczyła dodawania liczb całkowitych, 8-bitowych. Miałem dodać 2 liczby binarne i program wykonywać krokowo by zaobserwować wynik dodawania. Mam podane liczby 239 i 114. Po prostu je zamienić na heksalne, dodać i zamienić na binarne?
    Druga część to odejmowanie liczb całkowitych z użyciem kodu U2. U2 to kod uzupełnień do 2. Program ten samo co poprzednio. Czyli jak mniemam mam wykonać dodawanie liczby ujemnej: A+(-B). Mam 105+(-122).
    Kod U2 liczby to 01101001 a -122 to 10000110. Jednak do zamiany -B na dodatnią potrzebne są odpowiednie rozkazy, własnie nie wiem jakie i jak je użyć oraz jak dodaje się w U2. Mam też podać wartości wskaźników C AC OV P. OV- przeniesienie, AC przeniesienie pomocnicze. Pozostałe nie kojarze. Jak się je wyznacza te wskaźniki?

    Na ten czas to tyle. Z góry dziękuję za pomoc
  • REKLAMA
  • #2 10333859
    tprzemko
    Poziom 22  
    Posty: 413
    Pomógł: 54
    Ocena: 21
    Witam
    Proponuje popatrzeć na Link strona 50, jeśli chodzi o wskaźniki proszę sobie poczytać o rejestrze PSW.
    Pozdrawiam
  • REKLAMA
  • #3 10334078
    galgann
    Poziom 16  
    Posty: 233
    Ocena: 3
    Adresy urządzeń mi nie pomogą. Dla jasności, nie znam asemblera, miałem dopiero jedną lekcję z niego.
  • #4 10336129
    tprzemko
    Poziom 22  
    Posty: 413
    Pomógł: 54
    Ocena: 21
    Witam
    Poniżej adresów urządzeń masz jeszcze jedną tabelkę, która powinna Ci pomóc w pierwszym pytaniu, oraz strona 25, za opóźnienie odpowiada ten fragment.
    Kod: text
    Zaloguj się, aby zobaczyć kod

    Jeśli chodzi o rejestry Link
    Pozdrawiam
REKLAMA