# PIC mikrokontrolleri >  >= vai <=

## sharps

Vai ir kaads saskaaries ar dotajaam funkcijaam >= vai <= ieksh asm? Kaadas idejas shaadu darbiibu veikshanai?

----------


## abergs

> Kaadas idejas shaadu darbiibu veikshanai?


 Atvērt projektu kur šādas funkcijas izmantotas (piemēram MPLAB"ā) un skatīties 
View>Disassembly Listing kā tās izskatās asemblerā.

----------


## next

Neko jaunu neizgudrosi, atnjem operandus vienu no otra, analizee C bitu.

----------


## sharps

uzgaaju mazus paraugus internetaa.

http://www.usna.edu/EE/ee461/Homewor...rogramming.pdf

----------


## Slowmo

Varbūt vari iedot pseidokodā, kā gribi to "vai" izmantot? Tad būs vienkāršāk piemēru sastādīt.
Kaut kas šāds?
ja (a = 3 vai b = 8)
   [darām kaut ko]
ja nē
   [darām kaut ko citu]

----------


## sharps

a ir uzdots skaitlis, kas jaasalidzina ar mainiigo b, piemeeram ACP uzgjenereeto ciparu.

----------


## Slowmo

Ā, es drusku pārpatu.
Tad Tev vajag šito izlasīt: http://www.piclist.com/tecHREF/microchip/compcon.htm

----------


## next

Iisti nesapratu ko vajag, bet varbuut shito:
http://www.piclist.com/techref/microchip/rangechk.htm

----------


## sharps

centraa tiku ar divu skaitlju saliidzinaashanu. t.i. ja tiek uzdots skaitlis 200 decimaalajaa, tad shis tiek saliidzinaats ar kaadu mainiigo regjistra veertiibu. ja var>=200, tad tiek dariits *"tas"*, bet ja var<=200 tad tiek dariits *"shitas"*  :: 


iis koda izgriezums kaa tas izskataas.


```

		BCF	STATUS,	Z
		BCF	STATUS,	C
		CLRF	TEMP_1
		CLRF	TEMP_2
		CLRF	TEMP_3
;===================================================
;a=b
;===================================================
		MOVFW	VAR_TEMPERATURE						;b
		MOVWF	TEMP_1
;---------------------------------------------------
		MOVFW	SET_TEMPERATURE						;a
		SUBWF	TEMP_2

	BTFSC	STATUS,	Z
	GOTO	S4
;===================================================
;a<b
;===================================================
;		movlw	002h								;a
		MOVFW	VAR_TEMPERATURE
		MOVWF	TEMP_1

;		movlw	009h								;b
		MOVFW	SET_TEMPERATURE
		MOVWF	TEMP_2
;---------------------------------------------------
		MOVF	TEMP_2,W
		SUBWF	TEMP_1,W

	BTFSC	STATUS,	C
		GOTO	S1
		MOVWF	TEMP_3

	BTFSS	TEMP_3,	7
		GOTO	S1
		GOTO	S2

S1
	BANKSEL	DUTYCYCLE_WHITE
			MOVFW	DUTYCYCLE
			XORLW	000h
		BTFSS	STATUS,	Z
			DECF	DUTYCYCLE

		GOTO	S4	

S2
;===================================================
;a>b
;===================================================
;		movlw	002h								;a
		MOVFW	SET_TEMPERATURE
		MOVWF	TEMP_1

;		movlw	009h								;b
		MOVFW	VAR_TEMPERATURE
		MOVWF	TEMP_2
;---------------------------------------------------
		MOVF	TEMP_2,W
		SUBWF	TEMP_1

	BTFSC	STATUS,	C
		GOTO	S3
		MOVWF	TEMP_3

	BTFSS	TEMP_3,	7
		GOTO	S3
		GOTO	S4
S3
	BANKSEL	DUTYCYCLE_WHITE
			MOVFW	DUTYCYCLE
			XORLW	050h
		BTFSS	STATUS,	Z
			INCF	DUTYCYCLE
S4
```

----------

