皆さんへの簡単な質問です。私のループでは、CMP、BLT、およびBGTを使用していくつかの値を比較する必要があります。次のループで上記の命令をどのように使用しますか?
アプリケーションを機能させるために必要なBGT、BLT、およびCMPを使用しようとしています。問題は、それらの使い方がわからないことです。CMPを使用してr6とr4を比較し、その差をr7に入れたい場合、これをどのように行いますか?r7が0未満の場合にBLTを使用したい場合も同じ質問ですが、これを行うにはどうすればよいですか?
BGT ??????? ; branch if greater than 5
CMP ???????? ; compare r6 with r4 , put difference into r7
BLT ???????? ;branch if r7 is less than 0
BGT ???????? ;branch if r7 is greater than 0
これが私のループ全体です:
LoopStart
BL WaitBUT1
BL readTemp
BL checkTemp
BGT ??????? ; branch if greater than 5
BL errorVal
CMP ???????? ; compare r6 with r4 , put difference into r7
BLT ???????? ;branch if r7 is less than 0
BL FanOn
BL errorLedOn
BL systemLedOn
BL heaterOn
BGT ???????? ;branch if r7 is greater than 0
BL FanOff
BL errorLedOff
BL systemLedOff
BL heaterOff
BL WaitBUT2
BL FanOff
BL errorLedOff
BL systemLedOff
BL heaterOff
B LoopStart