fork download
  1. ; ZONA DE DATOS **********************************************************************
  2.  
  3. __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
  4. LIST P=16F84A
  5. INCLUDE <P16F84A.INC>
  6.  
  7. CBLOCK 0x0C
  8. Penultimo ; Ocupa la posición 0x0C de RAM.
  9. Ultimo ; Ocupa la posición 0x0D de RAM.
  10. Suma ; Ocupa la posición 0x0E de RAM.
  11. ENDC
  12.  
  13. ; ZONA DE CÓDIGOS ********************************************************************
  14.  
  15. ORG 0 ; El programa comienza en la dirección 0.
  16. Inicio
  17. bsf STATUS,RP0 ; Acceso al Banco 1.
  18. clrf TRISB ; Las líneas del Puerto B se configuran como salida.
  19. bcf STATUS,RP0 ; Acceso al Banco 0.
  20. Principal
  21. clrf Penultimo ; Asigna 0 al penúltimo término de Fibonacci y
  22. movlw .1 ; 1 al último. Son las "semillas".
  23. SigueSumando
  24. movwf Ultimo ; Asigna (W) al (Ultimo) término de Fibonacci.
  25. addwf Penultimo,W ; Suma términos último y penúltimo.
  26. movwf Suma ; (Suma)=(Penultimo)+(Ultimo).
  27. btfsc STATUS,C ; ¿C=0?, ¿(W)<256?
  28. goto Fin ; No, por tanto ha excedido del máximo y sale.
  29. movf Ultimo,W ;, por tanto el (Ultimo) pasa al (Penultimo).
  30. movwf Penultimo
  31. movf Suma,W ; Y la (Suma) al (Ultimo).
  32. goto SigueSumando
  33. Fin movfw Ultimo ; En (Ultimo) el término de Fibonacci buscado.
  34. movwf PORTB ; Resultado se visualiza por el puerto de salida.
  35. sleep
  36.  
  37. END
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
1
2
10
42
11
compilation info
prog.s: Assembler messages:
prog.s:0: Warning: end of file not at end of a line; newline inserted
prog.s:1: Error: no such instruction: `zona DE DATOS **********************************************************************'
prog.s:3: Error: invalid character '_' in mnemonic
prog.s:4: Error: no such instruction: `list P=16F84A'
prog.s:5: Error: no such instruction: `include <P16F84A.INC>'
prog.s:7: Error: no such instruction: `cblock 0x0C'
prog.s:8: Error: no such instruction: `penultimo'
prog.s:8: Error: no such instruction: `ocupa la posición 0x0C de RAM.'
prog.s:9: Error: no such instruction: `ultimo'
prog.s:9: Error: no such instruction: `ocupa la posición 0x0D de RAM.'
prog.s:10: Error: no such instruction: `suma'
prog.s:10: Error: no such instruction: `ocupa la posición 0x0E de RAM.'
prog.s:11: Error: no such instruction: `endc'
prog.s:13: Error: no such instruction: `zona DE CÓDIGOS ********************************************************************'
prog.s:15: Error: no such instruction: `org 0'
prog.s:15: Error: no such instruction: `el programa comienza en la dirección 0.'
prog.s:16: Error: no such instruction: `inicio'
prog.s:17: Error: too many memory references for `bsf'
prog.s:17: Error: no such instruction: `acceso al Banco 1.'
prog.s:18: Error: no such instruction: `clrf TRISB'
prog.s:18: Error: no such instruction: `las líneas del Puerto B se configuran como salida.'
prog.s:19: Error: no such instruction: `bcf STATUS,RP0'
prog.s:19: Error: no such instruction: `acceso al Banco 0.'
prog.s:20: Error: no such instruction: `principal'
prog.s:21: Error: no such instruction: `clrf Penultimo'
prog.s:21: Error: no such instruction: `asigna 0 al penúltimo término de Fibonacci y'
prog.s:22: Error: no such instruction: `movlw .1'
prog.s:22: Error: junk at end of line, first unrecognized character is `1'
prog.s:23: Error: no such instruction: `siguesumando'
prog.s:24: Error: no such instruction: `movwf Ultimo'
prog.s:24: Error: no such instruction: `asigna (W)al (Ultimo)término de Fibonacci.'
prog.s:25: Error: no such instruction: `addwf Penultimo,W'
prog.s:25: Error: no such instruction: `suma términos último y penúltimo.'
prog.s:26: Error: no such instruction: `movwf Suma'
prog.s:26: Error: junk at end of line, first unrecognized character is `('
prog.s:27: Error: no such instruction: `btfsc STATUS,C'
prog.s:27: Error: junk at end of line, first unrecognized character is `?'
prog.s:28: Error: no such instruction: `goto Fin'
prog.s:28: Error: no such instruction: `no, por tanto ha excedido del máximo y sale.'
prog.s:29: Error: no such instruction: `movf Ultimo,W'
prog.s:29: Error: invalid character (0xc3) in mnemonic
prog.s:30: Error: no such instruction: `movwf Penultimo'
prog.s:31: Error: no such instruction: `movf Suma,W'
prog.s:31: Error: no such instruction: `y la (Suma)al (Ultimo).'
prog.s:32: Error: no such instruction: `goto SigueSumando'
prog.s:33: Error: no such instruction: `fin movfw Ultimo'
prog.s:33: Error: no such instruction: `en (Ultimo)el término de Fibonacci buscado.'
prog.s:34: Error: no such instruction: `movwf PORTB'
prog.s:34: Error: no such instruction: `resultado se visualiza por el puerto de salida.'
prog.s:35: Error: no such instruction: `sleep'
prog.s:37: Error: no such instruction: `end'
stdout
Standard output is empty