fork(2) download
  1. ;DODAWANIE DWOCH LICZB DWUBAJTOWYCH WYNIK 2 LUB 3 BAJTOWY
  2.  
  3.  
  4. list p=16f1517
  5. #include <p16f1517.inc>
  6.  
  7. ORG 0x000 ; poczatek programu
  8.  
  9. L1L equ 0x23 ; młodszy bajt liczby L1 - dwubajtowej
  10. L1H equ 0x22 ; starszy bajt liczby L1 - dwubajtowej
  11. L2L equ 0x25 ; młodszy bajt liczby L2 - dwubajtowej
  12. L2H equ 0x24 ; starszy bajt liczby L2 - dwubajtowej
  13. WynL1 equ 0x35 ; wynik dwubjatowy
  14. WynL2 equ 0x34 ; wynik dwubjatowy
  15. WynH1 equ 0x33 ; wynik trzybajtowy
  16.  
  17. ; wyczyszczenie rejestrów
  18. clrf L1L
  19. clrf L1H
  20. clrf L2L
  21. clrf L2H
  22. clrf WynH1
  23. clrf WynL1
  24. clrf WynL2
  25. ; dodajemy liczby FDE8 i D0EA
  26. ;dodawanie młodszych bajtów
  27. movlw 0x4D ; ładujemy do akumulatora młodszy bajt liczby L1,
  28. movwf L1L ; przenosiamy do rejestru L1L
  29. movlw 0x5B ; ładujemy do akumulatora młodszy bajt liczby L2,
  30. movwf L2L ; przenosimy do rejestru L2L
  31. addwf L1L,w ; dodajemy do L1L to co w akumulatorze
  32.  
  33. movwf WynL1 ; przeniesienie do WynL1 wyniku dodawania młodszych bajtów liczb L1 i L2
  34.  
  35. ; jeśli nastapiło przeniesienie
  36. btfsc STATUS,C ;sprawdz bit C rejestru status,
  37. incf WynL2 ; zwiększamy WynL2 bo wystąpiło przeniesienie
  38.  
  39. ; dodawanie starszych bajtów
  40. movlw 0x50 ; ładujemy do akumulatora starszy bajt liczby L1,
  41. movwf L1H ; przenosiamy do rejestru L1H
  42. movlw 0x65 ; ładujemy do akumulatora starszy bajt liczby L2
  43. movwf L2H ; przenosiamy do rejestru L2H
  44. addwf L1H,w ; dodajemy do L1H to co w akumulatorze
  45.  
  46. ; sprawdzamy przeniesienie - jeśli nastąpiło to 3 bajtowy wynik
  47. btfsc STATUS,C ;sprawdz bit C rejestru status,
  48. incf WynH1 ;zwiększamy WynH1 bo wystąpiło przeniesienie
  49.  
  50. ; zapisujemy drugi bajt wyniku
  51. addwf WynL2,w ; dodajemy do WynL2 to co w akumulatorze
  52. movwf WynL2 ; przenosimy do rejestru WynL2
  53.  
  54. end ; koniec
  55.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.asm:4: error: parser: instruction expected
prog.asm:5: error: label or instruction expected at start of line
prog.asm:7: error: parser: instruction expected
prog.asm:18: error: parser: instruction expected
prog.asm:19: error: symbol `clrf' redefined
prog.asm:19: error: parser: instruction expected
prog.asm:20: error: symbol `clrf' redefined
prog.asm:20: error: parser: instruction expected
prog.asm:21: error: symbol `clrf' redefined
prog.asm:21: error: parser: instruction expected
prog.asm:22: error: symbol `clrf' redefined
prog.asm:22: error: parser: instruction expected
prog.asm:23: error: symbol `clrf' redefined
prog.asm:23: error: parser: instruction expected
prog.asm:24: error: symbol `clrf' redefined
prog.asm:24: error: parser: instruction expected
prog.asm:27: error: parser: instruction expected
prog.asm:28: error: parser: instruction expected
prog.asm:29: error: symbol `movlw' redefined
prog.asm:29: error: parser: instruction expected
prog.asm:30: error: symbol `movwf' redefined
prog.asm:30: error: parser: instruction expected
prog.asm:31: error: parser: instruction expected
prog.asm:33: error: symbol `movwf' redefined
prog.asm:33: error: parser: instruction expected
prog.asm:36: error: parser: instruction expected
prog.asm:37: error: parser: instruction expected
prog.asm:40: error: symbol `movlw' redefined
prog.asm:40: error: parser: instruction expected
prog.asm:41: error: symbol `movwf' redefined
prog.asm:41: error: parser: instruction expected
prog.asm:42: error: symbol `movlw' redefined
prog.asm:42: error: parser: instruction expected
prog.asm:43: error: symbol `movwf' redefined
prog.asm:43: error: parser: instruction expected
prog.asm:44: error: symbol `addwf' redefined
prog.asm:44: error: parser: instruction expected
prog.asm:47: error: symbol `btfsc' redefined
prog.asm:47: error: parser: instruction expected
prog.asm:48: error: symbol `incf' redefined
prog.asm:48: error: parser: instruction expected
prog.asm:51: error: symbol `addwf' redefined
prog.asm:51: error: parser: instruction expected
prog.asm:52: error: symbol `movwf' redefined
prog.asm:52: error: parser: instruction expected
stdout
Standard output is empty