Advertisement
Guest User

Untitled

a guest
Jun 3rd, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Część całkowita średniej arytmetycznej 9 liczb 16-bitowych:
  2.  
  3.    
  4.     starsze equ X
  5.     mlodsze equ Y
  6.    
  7.     LL equ starsze
  8.     MM equ LL + 1
  9.     HH equ MM + 1
  10.  
  11.     R0 mov #starsze
  12.     R1 mov #mlodsze
  13.    
  14.     LL mov #0
  15.     MM mov #0
  16.     HH mov #0
  17.  
  18.  
  19.     mean_ave:
  20.    
  21.     mov A, LL
  22.     add A, @R0
  23.     mov LL, A
  24.  
  25.     mov A, MM
  26.     addc A, @R1
  27.     mov MM, A
  28.  
  29.     mov A, HH
  30.     addc A, #0 ;propagacja C do najstarszego bajtu
  31.     mov HH, A
  32.  
  33.     inc R0
  34.     inc R1
  35.  
  36.     djnz mean_ave, koniec
  37.  
  38.     integer:
  39.    
  40.     mov R6, #0; licznik ile razy zmieści się 9
  41.  
  42.     clr C
  43.  
  44.  
  45.     minus:
  46.     ;odjęcie od najmłodszego bajtu
  47.     mov A, LL,
  48.     subb A, #9
  49.     mov LL, A
  50.  
  51.     mov A, MM
  52.     subb MM, #0
  53.     mov MM, A
  54.  
  55.     mov A, HH
  56.     subb A, #0
  57.     mov HH, A
  58.  
  59.     jc koniec
  60.     inc R6
  61.     jump minus
  62.  
  63.     koniec:
  64.     ret
  65.  
  66.  
  67.  
  68. Wyszukiwanie wzorca z sygnalizacją znalezienia:
  69.  
  70.     R1 mov #wzorzec
  71.     R0 mov #szukane
  72.     clr F_FLAG
  73.  
  74.     szukaj:
  75.     mov A, @R0
  76.     cjne A, R2, NOT_F
  77.     setb F_FLAG
  78.     ret
  79.    
  80.     NOT_F
  81.     inc R0
  82.     jmp szukaj
  83.  
  84.  
  85. Przeniesie N bajtów danych w pamięci zewnętrznej i adresy większe od 255:
  86.  
  87.     R6 mov #N
  88.     R5 mov #HIGH_dst
  89.     R6 mov #LOW_dst
  90.     mov DPTR, #src_addr
  91.  
  92.  
  93. shift:
  94.  
  95.     movx A, @DPTR
  96.     inc DPTR
  97.     push DPH
  98.     push DPL
  99.     mov DPH, R5
  100.     mov DPL, R6
  101.     movx DPTR, @A
  102.     inc DPTR   
  103.     mov R5, DPH
  104.     mov R6, DPL
  105.     pop DPH
  106.     pop DPL
  107.     djnz R6, shift
  108.  
  109.  
  110. Sortowanie  w pamięci wewnętrznej N liczb
  111.  
  112.     sort:
  113.     mov R7, #N-1
  114.     mov R0, #adresStart
  115.     mov R1, #adresStart+1
  116.     clr FLAG
  117.  
  118.     cmp:
  119.     mov A, @R1
  120.     clr C
  121.     subb A, @R0; jeśli C, to A > @R0
  122.     jnc DALEJ
  123.     mov A, @R1
  124.     xch A, @R0
  125.     mov @R1, A
  126.     setb FLAG
  127.  
  128.     DALEJ:
  129.     inc R0
  130.     inc R1
  131.     djnz R7, cmp
  132.     jnb FLAG, KONIEC
  133.     mov R7, #N-1
  134.     clr FLAG
  135.     jmp cmp
  136.    
  137.     koniec:
  138.     ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement