I
ITP
Guest
こんにちはすべて、
私はkを持つ*メール* iの* l.奇妙な問題に直面していますĈその中の"if"文について
(者LJMP)命令を無条件分岐を生成します。しかし
、 私はダミーの配置
文[中(!STOP_KEY_PORT)]が動作します。
以下に私*メール* iの*リットル私のC * 51プログラムのセグメントとその対応するカ示されている
出力します。
次のように2つのビット変数を使用するための宣言ですsbit STOP_KEY_PORT = P1の^ 5;
sbit velocity_in = P2 ^ 3;------------------------スタート-----------------------
/ /元のCコード
(
P1の= 0x0f0;
velocity_in = 1;
(!velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
(velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
)カ*メール* iの* lの出力:758:P1の= 0x0f0;
Ĉ:0x0CA8 7590F0 MOV P1の(場合0x90)、#adc_data(0xF0が)
759:velocity_in = 1;
760:
Ĉ:0x0CAB D2B4にsetb velocity_in(0xB0.4)
761:(!velocity_in)中
Ĉ:0x0CAD 20B403バトンvelocity_in(0xB0.4)は、C:0CB3
762:(
763:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0CB0 020D80者LJMP Ĉ:0D80
764:)
765:(velocity_in)中
Ĉ:0x0CB3 30B403からJNB velocity_in(0xB0.4)は、C:0CB9
766:(
767:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0CB6 020D80者LJMP Ĉ:0D80
768:)
769:)
----------------------------終了--------------------- ----------
---------------------------スタート---------------------- --------
/ / Cコードステートメントの導入後、[中(!STOP_KEY_PORT)](
P1の= 0x0f0;
velocity_in = 1;
中(!STOP_KEY_PORT); / /" -新ラインを導入
(!velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
(velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
)カ*メール* iの* lの出力:
758:P1の= 0x0f0;
Ĉ:0x0B0B 7590F0 MOV P1の(場合0x90)、#(0xF0が)adc_data
759:velocity_in = 1;
Ĉ:0x0B0E D2B4にsetb velocity_in(0xB0.4)
760:中(!STOP_KEY_PORT);
Ĉ:0x0B10 3095FDからJNB STOP_KEY_PORT(0x90.5)は、C:0B10
761:(!velocity_in)中
Ĉ:0x0B13 20B406バトンvelocity_in(0xB0.4)は、C:0B1C
762:(
763:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0B16 2095FAバトンSTOP_KEY_PORT(0x90.5)は、C:0B13
Ĉ:0x0B19 020BF2者LJMP Ĉ:0BF2
764:)
765:(velocity_in)中
Ĉ:0x0B1C 30B406からJNB velocity_in(0xB0.4)は、C:0B25
766:(
767:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0B1F 2095FAバトンSTOP_KEY_PORT(0x90.5)は、C:0B1C
Ĉ:0x0B22 020BF2者LJMP Ĉ:0BF2
768:)
769:)
---------------------------終了---------------------- ------親切に私は
、 この問題を理解するのに役立ちます。
お時間をいただきありがとうございます。
ITPの。
ITPのが07 2003 10時17分9月最終編集日:1時間編集合計
私はkを持つ*メール* iの* l.奇妙な問題に直面していますĈその中の"if"文について
(者LJMP)命令を無条件分岐を生成します。しかし
、 私はダミーの配置
文[中(!STOP_KEY_PORT)]が動作します。
以下に私*メール* iの*リットル私のC * 51プログラムのセグメントとその対応するカ示されている
出力します。
次のように2つのビット変数を使用するための宣言ですsbit STOP_KEY_PORT = P1の^ 5;
sbit velocity_in = P2 ^ 3;------------------------スタート-----------------------
/ /元のCコード
(
P1の= 0x0f0;
velocity_in = 1;
(!velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
(velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
)カ*メール* iの* lの出力:758:P1の= 0x0f0;
Ĉ:0x0CA8 7590F0 MOV P1の(場合0x90)、#adc_data(0xF0が)
759:velocity_in = 1;
760:
Ĉ:0x0CAB D2B4にsetb velocity_in(0xB0.4)
761:(!velocity_in)中
Ĉ:0x0CAD 20B403バトンvelocity_in(0xB0.4)は、C:0CB3
762:(
763:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0CB0 020D80者LJMP Ĉ:0D80
764:)
765:(velocity_in)中
Ĉ:0x0CB3 30B403からJNB velocity_in(0xB0.4)は、C:0CB9
766:(
767:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0CB6 020D80者LJMP Ĉ:0D80
768:)
769:)
----------------------------終了--------------------- ----------
---------------------------スタート---------------------- --------
/ / Cコードステートメントの導入後、[中(!STOP_KEY_PORT)](
P1の= 0x0f0;
velocity_in = 1;
中(!STOP_KEY_PORT); / /" -新ラインを導入
(!velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
(velocity_in)中
(
場合(!STOP_KEY_PORT)後藤中止;
)
)カ*メール* iの* lの出力:
758:P1の= 0x0f0;
Ĉ:0x0B0B 7590F0 MOV P1の(場合0x90)、#(0xF0が)adc_data
759:velocity_in = 1;
Ĉ:0x0B0E D2B4にsetb velocity_in(0xB0.4)
760:中(!STOP_KEY_PORT);
Ĉ:0x0B10 3095FDからJNB STOP_KEY_PORT(0x90.5)は、C:0B10
761:(!velocity_in)中
Ĉ:0x0B13 20B406バトンvelocity_in(0xB0.4)は、C:0B1C
762:(
763:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0B16 2095FAバトンSTOP_KEY_PORT(0x90.5)は、C:0B13
Ĉ:0x0B19 020BF2者LJMP Ĉ:0BF2
764:)
765:(velocity_in)中
Ĉ:0x0B1C 30B406からJNB velocity_in(0xB0.4)は、C:0B25
766:(
767:もし(!STOP_KEY_PORT)後藤中止;
Ĉ:0x0B1F 2095FAバトンSTOP_KEY_PORT(0x90.5)は、C:0B1C
Ĉ:0x0B22 020BF2者LJMP Ĉ:0BF2
768:)
769:)
---------------------------終了---------------------- ------親切に私は
、 この問題を理解するのに役立ちます。
お時間をいただきありがとうございます。
ITPの。
ITPのが07 2003 10時17分9月最終編集日:1時間編集合計