<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > IC解密之單片機算術(shù)運算指令

IC解密之單片機算術(shù)運算指令

作者: 時(shí)間:2012-03-29 來(lái)源:網(wǎng)絡(luò ) 收藏
8位運算的范圍只有0-255,這在實(shí)際工作中是不夠的,因此就要進(jìn)行擴展,一般是將2個(gè)8位的數**算合起來(lái),成為一個(gè)16位的運算,這樣,能表達的數的范圍就能達到0-65535。如何合并呢?其實(shí)很簡(jiǎn)單,讓我們看一個(gè)10進(jìn)制數的例程:

  66+78。

  這兩個(gè)數相加,我們根本不在意這的過(guò)程,但事實(shí)上我們是這樣做的:先做6+8(低位),然后再做6+7,這是高位。做了兩次加法,只是我們做的時(shí)候并沒(méi)有刻意分成兩次加法來(lái)做罷了,或者說(shuō)我們并沒(méi)有意識到我們做了兩次加法。之所以要分成兩次來(lái)做,是因為這兩個(gè)數超過(guò)了一位數所能表達的范置(0-9)。

  在做低位時(shí)產(chǎn)生了進(jìn)位,我們做的時(shí)候是在適當的位置點(diǎn)一下,然后在做高位加法是將這一點(diǎn)加進(jìn)去。那么計算機中做16位加法時(shí)同樣如此,先做低8位的,如果兩數相加產(chǎn)生了進(jìn)位,也要“點(diǎn)一下”做個(gè)標記,這個(gè)標記就是進(jìn)位位C,在PSW中。在進(jìn)行高位加法是將這個(gè)C加進(jìn)去。例:1067H+10A0H,先做67H+A0H=107H,而107H顯然超過(guò)了0FFH,因此最終保存在A(yíng)中的是7,而1則到了PSW中的CY位了,換言之,CY就相當于是100H。然后再做10H+10H+CY,結果是21H,所以最終的結果是2107H。

  帶借位的減法指令

  SUBB A,Rn

  SUBB A,direct

  SUBB A,@Ri

  SUBB A,#data

  設(每個(gè)H,(R2)=55H,CY=1,執行指令SUBB A,R2之后,A中的值為73H。

  說(shuō)明:沒(méi)有不帶借位的減法指令,如果需要做不帶位的減法指令(在做第一次相減時(shí)),只要將CY清零即可。

  乘法指令

  MUL AB

  此指令的功能是將A和B中的兩個(gè)8位無(wú)符號數相乘,兩數相乘結果一般比較大,因此最終結果用1個(gè)16位數來(lái)表達,其中高8位放在B中,低8位放在A(yíng)中。在乘積大于FFFFFH(65535)時(shí),0V置1(溢出),不然OV為0,而CY總是0。

  例:(A)=4EH,(B)=5DH,執行指令

  MUL AB后,乘積是1C56H,所以在B中放的是1CH,而A中放的則是56H。

  除法指令

  DIV AB

  此單片機指令的功能是將A中的8位無(wú)符號數除了B中的8位無(wú)符號數(A/B)。除法一般會(huì )出現小數,但計算機中可沒(méi)法直接表達小數,它用的是我們小學(xué)生還沒(méi)接觸到小數時(shí)用的商和余數的概念,如13/5,其商是2,余數是3。除了以后,商放在A(yíng)中,余數放在B中。CY和OV都是0。如果在做除法前B中的值是00H,也就是除數為0,那么0V=1。



關(guān)鍵詞: IC 單片機 算術(shù)運 算指令

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>