溢位OF和進 借位CF標誌位的判定

2021-10-12 10:10:26 字數 663 閱讀 8205

cf是無符號數溢位標誌,of是有符號數溢位標誌。

通俗一點說就是,即使有符號數相加/相減導致了cf=1也沒什麼意義,不能說明結果的正確與否。此時,of=1,

則說明結果溢位,出現錯誤;of=0,說明結果正確。這個過程根本和cf沒關係,cf=1/0,都不會影響。同理也

可以得出of對無符號數也無影響。

方法一:根據表示式

of=cn異或cn-1

cn表示第n位的進製

cf=cout異或cin

cin等價於sub的選擇控制,為1時表示做減法

加法時,cf為1表示有進製;減法時,cf取反為1表示有借位

方法二:人為相加

判定cf時,把兩者當成無符號數,看是否進製

判定of時,把兩者當成有符號數,看是否進製或借位

用下邊這倆做題

判斷of

of=cn^cn-1

cn表示第n位是否發生進製,如是,則為1,否則為0

這裡的第n位指的是機器數的最高位,第n-1位就是次高位

判斷cf(人為操作)

把機器數都當作無符號數來進行加減法

兩數相加時,如果最高位有進製,則cf=1,否則為0

兩數相減時,如果被減數最高位有借位,則cf=1,否則為0

進製 借位標誌CF和溢位標誌OF

溢位是指運算結果超過了數的表示範圍。通常,稱大於機器所能表示的最大正數為上溢,小於機器所能表示的最小負數為下溢。計算機使用固定長度的機器數來表示數的,其所能表示的範圍是有限的。運算結果超過了這個範圍就溢位了。兩正數相加 或正數減負數 可能產生上溢 兩負數相加 或負數減正數 可能產生下溢。補碼減法也是...

TCP報文的URG和PSH標誌位

urg 緊急標誌位,它使一端可以告訴另一端有些具有某種方式的 緊急資料 已經放置在普通的資料流中。另一端被通知這個緊急資料已被放置在普通資料流中,由接收方決定如何處理。該標誌位要和緊急指標配合使用。當urg 1時,表明緊急指標字段有效。向系統說明此報文中有緊急資料,應該盡快傳送,而不是按照原來的排隊...

二進位制的加減法與標誌位CF OF數值的判斷方法

首先先來解釋一下標誌位of cf不同數值所代表的含義 of為1時,代表有符號數越界,即當8位時,超出 128 127的範圍 of為0時,代表有符號數未越界 cf為1時,代表無符號數越界,即當8位時,超出0 255的範圍 cf為0時,代表無符號數未越界 另外cf在迴圈移位 移位類指令中用來儲存從最高位...