Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. LJMP START
  2.    ORG 0100H    ;skok początkowy o 100 bitów
  3.  
  4. ;Podstawowe działania arytmetyczne
  5. START:
  6.    mov A, #0FH  ;ładujemy do akumulatora liczby F
  7.    add A, #02;dodajemy do akumulatora liczbę 1
  8.    mov B, #10H  
  9.    subb A,B     ;odejmujemy B od A
  10.    mul AB       ;liczbę z akumulatora mnożymy razy B
  11.    div AB       ;liczbę z akumulatora dzielimy przez liczbę w B
  12.  
  13. ;Arytmetyka 16 bitowa
  14. mov R0, #01H
  15. mov R2, #01H       
  16. mov R1, #02H
  17. mov R3, #02H       
  18.  
  19. mov A, R0
  20. add A, R1       ;Dodajemy liczbę z rejestru R1 do liczby z rejestru A (bez przeniesienia)
  21. mov A, R2
  22. addc A, R3      ;Dodajemy liczbę z rejestru R1 do liczby z rejestru A (bez przeniesienia)
  23.        
  24.  
  25. ;Operacje Logiczne
  26.    mov A, 1
  27.    mov B, 0
  28.    ORL A,B      ;do akumulatora będzie wpisana wartość funkcji logicznej A or 0
  29.    ANL A,B      ;do akumulatora będzie wpisana wartość funkcji logicznej A and 0
  30.    XRL A,B      ;do akumulatora będzie wpisana wartość funkcji logicznej A xor 0
  31.    CPL A        ;wszystkie bity zostają zanegowane
  32.  
  33. ;Pamięć XRAM
  34. mov DPTR, #8001H    ;ładujemy adres bezwzględny do DPTR
  35. movx A, @DPTR       ;do akumulatora zapisujemy daną z pamięci zewnętrznej (adres z DPTR)
  36. mov A, #10H
  37. movx @DPTR, A       ;do komórki pamięci zewnętrznej (o adresie DPTR) zapisujemy wartość akumulatora
  38.  
  39.  Nop            ;instrukcja pusta, która gwarantuje nam poprawne zamknięcie programu
  40.  Nop
  41.  Nop
  42.  JMP $
  43.  END START
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement