Gebruik van de SUBWF instructie

T

Tracid

Guest
Hoi
Ik ben het schrijven van een simpele code in ASM voor PIC16F84A twee registers vergelijken en afhankelijk van het resultaat afslag naar locaties ...Haar alredy duidelijk voor mij dat SUBLW aftrekken W uit letterlijke en niet het tegenovergestelde als bij het gebruik van SUBWF.Het enige dat is voor mij onduidelijk is wanneer is de Carry byt ingesteld of uitgeschakeld.Want ik heb gezocht op het web en vond andere verklaring waaruit men moet het mis.
Dus ik schrijf de code hier met uitleg Wat is mijn gewenste resultaat en ik verzoek u mij te corrigeren als ik wrong.So uur:

Vergelijk movf M1Time, W, dit is de eerste register te vergelijken
subwf M3Time, W; vergelijken met het tweede register
BZ M3_Eq_M1, ze zijn hetzelfde

movf M1Time, W
subwf M3Time, W
BNC M3_LT_M1; M3Time is minder dan M1Time

goto M3_GT_M1; M3Time is groter dan M1TimeM3_Eq_M1 movf .....

M3_LT_M1 movf .....

M3_GT_M1 movf ....1, is deze code correct?

2, als ik trek een grotere waarde van een kleinere waarde van de Carry bit wordt ingesteld?OF de carry bit wordt gewist?zijn een beetje verwarrend me .... dit gaat over Draag en lenen?C bit is ingesteld op de overloop en is uitgeschakeld op underflow?

3, kunt u raden me niet addlw en de tweeën oplossing aanvulling

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Lachten" border="0" />

)

Hartelijk dank

 
Hoi,

Kijkend naar mijn oude instructieset merkt Ik heb dit voor de Status bit 0 Carry Flag.

Indien het resultaat van een Sub Zero is Pos of de Carry is ingesteld op 1
Indien het resultaat van een subwoofer is Negtive de Carry is ingesteld op 0

Om uw code te bevestigen juist is, maar lopen in Mplabs Simualtor en enkele stap die regels code kijken naar de status bits op de onderste werkbalk, Carry c = 0 C = 1

 
Enige tijd geleden schreef ik een utility om te helpen schrijven assembler code voor Pic16 serie micros en gepost op het eda boord hier.

http://www.edaboard.com/viewtopic.php?t=53935&highlight=pic code generatorGeen installatie is nodig, gewoon alle bestanden uitpakken naar een directory.Bel de directory PicHelp of wat je maar wilt.
Genereert code voor gemeenschappelijke constructies in de programmering.

Geef het een gaan en zien of het helpt.

 

Welcome to EDABoard.com

Sponsor

Back
Top