微控制器中jc指令表示什麼?有什麼用

2021-05-29 12:39:35 字數 3584 閱讀 2362

1樓:111111前的

jc是判斷c進位標誌是否為1,為1則跳轉到指定位置。

jc指令判斷有借位則轉移,也就是說兩數相減為負轉移。jbc指令判斷該位為1則轉移,同時將該位置0。

條件轉移指令只能轉移到離本指令-128~+127位元組範圍內,是一種相對轉移形式,當要往較遠單元地址條件轉移時,可以在本指令-128~+127位元組範圍內安排一條無條件轉移指令作為中轉指令即可。在使用簡單條件跳轉指令時,必須明確相應標誌位的變化。

擴充套件資料:簡單條件跳轉指令:

1、jc      目的地址     進位標誌位cf=1,轉移2、jnc   目的地址     進位標誌位cf=0,轉移3、jz      目的地址     零標誌位zf=1,轉移4、jnz    目的地址    零標誌位zf=0,轉移5、js      目的地址    符號標誌sf=1,轉移5、jns   目的地址    符號標誌sf=0,轉移6、jo     目的地址    溢位標誌of=1,轉移7、jno   目的地址    溢位標誌of=0,轉移8、jp      目的地址    奇偶標誌pf=1,轉移9、jnp    目的地址    奇偶標誌pf=0,轉移10、jcxz  目的地址    cx=0,轉移

2樓:匿名使用者

cy的變化受以下指令的影響:

1、add

2、addc

3、subb

4、cjne

所以要判斷cy,前一指令需要是上面的指令之一。

3樓:匿名使用者

用在加減法運算的後面,控制程式的跳轉;即當標誌暫存器中的c為1時跳轉到相應的地址,常用來在rom連續的儲存單元中跳躍執行**;

4樓:匿名使用者

jc是一個c51指令,功能是判位跳轉,舉例說明:

mov a,#60 ;送立即數到acjne a,#59,l1 ;將a與立即數「#59」對比,if a>#59,acc=0;else acc=1 .

;-------------------------------------

l1: jc l2 ;關鍵在這裡,如果acc=1,程式跳到l2處執行,否則程式往下執行 .

l2:........end

5樓:

jc是布林變數操作類指令

用法:jc rel ;進位位為1則轉移到rel處(cy=o不轉移,=1轉移)

6樓:匿名使用者

如果進位位為1 ,轉移

7樓:

進位c為1時轉移,c為0時程式順序執行。

jc 在組合語言中什麼意思

8樓:胖大海君

jc 在組合語言 是一個

條件轉移指令的操作碼 後面應該再加上一個位元組的偏移量 即要轉移到地址(為運算元)

例如 jc llla ;其中 jc 為操作碼 表示指令要執行的功能

j 表示轉移 c表示轉移到條件 (當進位標誌c=1 即有進位時 轉移 否則不轉移)

llla 是運算元 表示要轉移到地址

9樓:戰雨

上一條cmp語句,左側數小於等於右側數則跳轉

下面兩個回答,答非所問或者答錯了

組合語言裡jc指令是什麼意思?

10樓:天池血崩

jc=jump if carry

當運算產生進位標誌時,即cf=1時,跳轉到目標程式處。e69da5e6ba9062616964757a686964616f31333363396462

例如:add al,bl

jc carrybit

inc al;如果al+bl產生了進位,這一句就不執行了。

carrybit:

neg al

這段程式沒有任何意義,僅僅作為示例哈。。。

相同的指令還有:

jnc,當cf=0時跳轉;

jz,當zf=1時跳轉,jnz,當zf=0時跳轉;

jo,當of=1時跳轉,jno,當of=0時跳轉;

jp,當pf=1時跳轉……

依此類推,標誌暫存器的各個位基本上都可以用來做「條件跳轉」的條件。

當然,條件跳轉不僅僅是標誌暫存器位,還可以是cx如:a_loop:

;do something

dec cx

jcxz

jmp a_loop

可以看出,這一段相當於一個loop指令。。。

還有,用於大小判斷型的:

cmp op1,op2

jxx ***x

其中jxx有以下幾種:

ja表示op1>op2,jna表示op1<=op2;

jb表示op1=op2;

je表示op1=op2,jne表示op1<>op2;

還有jae、jnae、jbe、jnbe等等功能重複不再贅述。

以上是無符號數的比較。

有符號數的比較將a換成g,將b換成l即可。

a=above b=below g=greater l=less介紹的夠詳細了吧。。。

微控制器組合語言指令中,條件轉移指令jbc與jc的區別是什麼?

11樓:墨汁諾

一、作用不同:

jbc指令判斷該位為1則轉移,同時將該位置0。

jc指令判斷有借位則轉移,也就是說兩數相減為負轉移。

二、含義不同:

jbc指令相當與jb和clr (位) 二條指命的組合,它可在轉移的同時清除被判位;

jc指令只能對cy進位位進行判斷為高後轉移,並不能清除它,二條指令都當被測位為高進時進行相對轉移。

三、位置不同:

jc是判斷c進位標誌是否為1,為1則跳轉到指定位置。

jbc是判斷可位定址區域內指定位是否為1,為1則跳轉到指定位置,並同時清除該位(置0)。

12樓:匿名使用者

jbc指令判斷該位為1則轉移,同時將該位置0

jc指令判斷有借位則轉移,也就是說兩數相減為負轉移。

13樓:亂七胡說八糟亂想

jbc指令相當與 jb 和 clr (位) 二條指命的組合,它可在轉移的同時清除被判位,jc 指令只能對cy進位位進行判斷為高後轉移,並不能清除它. 二條指令都當被測位為高進時進行相對轉移.

14樓:匿名使用者

jc是判斷c進位標誌是否為1,為1則跳轉到指定位置。

jbc是判斷可位定址區域內指定位是否為1,為1則跳轉到指定位置,並同時清除該位(置0)。

15樓:還收藏的小屁孩

jbc除了對標誌位c進行判定是否為1外,還要做一個動作,就是將c清零!

也就是說,在c為1時,jbc判定完要清零

16樓:

jbc 是對位進行判斷

jc只判斷進位標誌位(cy)

17樓:

jbc 是對位判斷

jc判斷進位位標誌

微控制器DEC怎麼意思,DEC是什麼指令

減一指令 與之相對的有個 inc 加一指令 就像c語言的 i dec是什麼指令 dec decrement 減1指令格式 dec opr byte word執行操作 opr opr 1 除cf標誌位,其餘標誌位都受影響。該指令將運算元的內容減1並返回運算元。運算元可以是暫存器運算元或儲存器運算元。例...

微控制器彙編指令中RETI和RET的區別

1 方式不同 當某一中斷源響應後,微控制器中的reti將會自動置位,用於阻止比它低階內或同級的中斷觸容發。reti可以清除 優先順序啟用觸發器 即flag暫存器 以保證後續中斷源的及時響應。所以,當把reti替換為ret後,該程式在第一次執行時可能不會出錯,但在第二次執行時就會出錯了。2 過程不同 ...

微控制器中AREF是什麼意思,微控制器中的SMOD是什麼意思

一般是模數轉換的參考電壓,多數微控制器沒有,一般都直接用電源電壓 像8051f系列不僅有單獨的基準電壓,還有放大倍數控制 微控制器中的 od是什麼意思?od屬於特殊暫存器,該位跟串列埠通訊相關,是對定時器t0 t1工作方式跟模式的選擇。它是80c51微控制器中最具有特色的部分,幾乎所有80c51系列...