日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]CY(Carry): 用于表示加法進(jìn)算中的進(jìn)位和減法運(yùn)算中的借位,加法運(yùn)算中有進(jìn)位或減法運(yùn)算中有借位則CY位置1,否則為0OV: 表示運(yùn)算過(guò)程中是否發(fā)生了溢出,若運(yùn)算結(jié)果超過(guò)了8位二進(jìn)制數(shù)所能表示數(shù)據(jù)的范圍即有符號(hào)數(shù)-128

CY(Carry): 用于表示加法進(jìn)算中的進(jìn)位和減法運(yùn)算中的借位,加法運(yùn)算中有進(jìn)位或減法運(yùn)算中有借位則CY位置1,否則為0
OV: 表示運(yùn)算過(guò)程中是否發(fā)生了溢出,若運(yùn)算結(jié)果超過(guò)了8位二進(jìn)制數(shù)所能表示數(shù)據(jù)的范圍即有符號(hào)數(shù)-128~+127,則標(biāo)志位置1。


對(duì)無(wú)符號(hào)數(shù)的運(yùn)算,判斷只需CY即可,OV無(wú)作用。
對(duì)有符號(hào)數(shù)的運(yùn)算,OV位是有用的?!癘V位是C6位進(jìn)位與C7位進(jìn)位的異或”,說(shuō)法對(duì)的(對(duì)51單片機(jī)而言),但不同的計(jì)算機(jī)說(shuō)法不一


CY位是累加器的進(jìn)位、借位標(biāo)志。下文的敘述按16位機(jī)來(lái)舉例說(shuō)明,如果是8位機(jī)或其它字長(zhǎng),則可換一個(gè)例子,但道理相似。


對(duì)于無(wú)符號(hào)數(shù)的運(yùn)算,CY位就可以表示其是否溢出。但如果是有符號(hào)數(shù),則不能按CY標(biāo)志來(lái)判斷了。為此,設(shè)了另一個(gè)標(biāo)志OV,其含義就是“假如是有符號(hào)數(shù)運(yùn)算,是否出現(xiàn)了溢出”。


例如對(duì)于16位運(yùn)算器,65534 + 3,(即二進(jìn)制的1111111111111110 + 0000000000000011),
本該得65537,(即二進(jìn)制的10000000000000001),但因?yàn)榧拇嫫髦挥?6位,最高位的那個(gè)1丟掉了(進(jìn)入了CY標(biāo)志)。結(jié)果寄存器中只剩下了1,(即二進(jìn)制的0000000000000001)。


此時(shí),我們可以說(shuō),16位的無(wú)符號(hào)數(shù)加法,65534+3溢出了,溢出后的答案成了1。


但是對(duì)于有符號(hào)整數(shù),情況就不同了。有符號(hào)整數(shù)采用補(bǔ)碼表示法。16位有符號(hào)整數(shù)不可能表示65534,此時(shí)如果機(jī)內(nèi)二進(jìn)制是1111111111111110,程序中認(rèn)為它是-2,故:
機(jī)內(nèi)的二進(jìn)制的1111111111111110 + 0000000000000011,代表的是(-2) + 3。


請(qǐng)注意,此時(shí)的(-2)+3和上文的無(wú)符號(hào)數(shù)65534+3,在CPU的運(yùn)算器硬件上完全相同,都是得到和為1,而CY標(biāo)志也為1。


但是,有符號(hào)數(shù)(-2)+3=1并無(wú)溢出。故此時(shí)的CY標(biāo)志不能代表它溢出了。


另外再舉一例:
無(wú)符號(hào)數(shù)32763 + 8 = 32771,沒(méi)有進(jìn)位,CY標(biāo)志為0。此時(shí)并不溢出。
但是,如果是有符號(hào)數(shù)32763 + 8,這就是溢出了,因?yàn)?2773的二進(jìn)制為1000000000000011,作為有符號(hào)數(shù)會(huì)被看成負(fù)數(shù)-32765。16位有符號(hào)數(shù)不可能表示32773的。


不管是有符號(hào)數(shù)還是無(wú)符號(hào)數(shù),CPU的二進(jìn)制運(yùn)算器機(jī)器加、減操作是一樣的,但其“溢出”的條件不同。
現(xiàn)在大多數(shù)的計(jì)算機(jī)中,如果是無(wú)符號(hào)數(shù),都可以用CY標(biāo)志來(lái)判斷其是否溢出;而如果是有符號(hào)數(shù),則需要用OV標(biāo)志來(lái)判斷其是否溢出。


至于OV標(biāo)志在邏輯上又是根據(jù)什么產(chǎn)生的呢?則不同的計(jì)算機(jī)上有不同的實(shí)現(xiàn)方法,但效果都是一樣。
這里介紹一種道理比較容易懂的方法:“雙符號(hào)位法”。具體是:
作加、減法前,先將兩個(gè)運(yùn)算數(shù)都按照有符號(hào)數(shù)的規(guī)則擴(kuò)充成17位。即:符號(hào)位是0的前面添一位0,符號(hào)位是1的前面添一位1。
然后按17位的機(jī)器加、減,得出17位的結(jié)果。
如果17位結(jié)果的高兩位(即雙符號(hào)位)不同,就置OV標(biāo)志為1,否則,OV標(biāo)志為零。

然后取其低16位作為最后結(jié)果。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉