| Assembler per PIC
non so chi di voi si occupa di programmazione dei PIC..
premetto che io sono un programmatore : JAVA, C, C++, PHP, Visual Basic ecc
insomma solo linguaggi ad alto livello... .l'assembler dell' 8088 studiato solo teoricamente all'Università
..con i PIC sto iniziando da poco ..però non ho il programmatore.. vorrei acquistarlo più in là quando avrò acquisito una certa dimestichezza..
la mattina mi alzo alle 6:00 e prima di andare a lavoro mi faccio un oretta.. stamani mi sono assegnato l'esercizio di realizzare la divisione.. ..vorrei sapere da qualche anima buona se per il 16F84 è giusta la seguente routine,
ovvero se c'è qualcuno che la provi per me che non ho appunto il programmatore!
a dopo
faustog:
;-----------------------------------------------------
; Divisione = numero di volte che il DIVIDENDO puo essere
; sottratto dal DIVISORE. per esempio 8:3
; by FaustoG
;-----------------------------------------------------
PROCESSOR 16F84
RADIX DEC
INCLUDE "P16F84.INC"
ORG 0
EQU RISULTATO 18
EQU DIVISORE 20
EQU DIVIDENDO 22
CLRF RISULTATO
MOVLW 8
MOVWF DIVIDENDO ;carica 8 nel registro DIVIDENDO
MOVLW 3 ;carica il DIVISORE nell accumulatore
AA SUBWF DIVIDENDO, F ; sottrae al DIVIDENDO il DIVISORE
BTFSC STATUS, C ;se C=0 allora salta alla FINE perche
GOTO INCR ;il DIVIDENDO ha raggiunto lo zero oppure
GOTO FINE ;e negativo
INCR INCF RISULTATO
GOTO AA
FINE BSF STATUS, PR0
CLRF TRISB
BCF STATUS,RP0
MOVF RISULTATO, W
MOVWF PORTB
SLEEP
Invece il resto rimane nel registro DIVIDENDO.
a dopo
fausto
|