《匯編語言》王爽蕊苗,學(xué)習(xí)筆記(標(biāo)志寄存器上)

1.標(biāo)志寄存器

還記得一開提到的PSW寄存器嗎筹陵,他就是一個特殊的寄存器刽锤,他的作用是存儲最后一次執(zhí)行完語句(一般是邏輯運(yùn)算語句)后程序的一些狀態(tài)。他和其他的寄存器不一樣惶翻,其他的寄存器都是整個寄存器具有一個含義姑蓝,而他是按位來起作用的,他的每一位都有專門的含義吕粗。

8086的標(biāo)志寄存器有9個標(biāo)志位纺荧,分別是OF,DF,IF,TF,SF,ZF,AF,PF,CF,剩下的位在8086中并沒有使用,接下來分別介紹這些標(biāo)志位宙暇。

ZF標(biāo)志位

ZF是標(biāo)志寄存器的第6位输枯,他是零標(biāo)志位,他記錄最后一次執(zhí)行完語句之后占贫,其結(jié)果是否為0桃熄,如果是0,那ZF的值就是1(真)型奥,反之為0(假)瞳收。比如:

mov ax,1??????????????????????

sub ax,1??????????????????????? ;ax寄存器值減一

這段指令執(zhí)行后厢汹,ZF的值就為1螟深,表示結(jié)果是0。

PF標(biāo)志位

PF是標(biāo)志寄存器的第2位烫葬,奇偶標(biāo)志位界弧,記錄最后一次執(zhí)行完語句后,結(jié)果中的1的個數(shù)(二進(jìn)制)搭综,是偶數(shù)垢箕,PF = 1,反之為0兑巾。

SF標(biāo)志位

SF是標(biāo)志寄存器的第7位条获,符號標(biāo)志位,記錄最后一次執(zhí)行完語句后闪朱,結(jié)果的正負(fù)情況月匣,結(jié)果為負(fù),則SF = 1奋姿,若為正,SF = 0素标。

介紹到這里称诗,我們介紹一下有符號數(shù)和無符號數(shù),相信有一定計算機(jī)基礎(chǔ)的人都知道在計算機(jī)中头遭,一個數(shù)據(jù)可以看成有符號數(shù)寓免,也可以看成無符號數(shù),有符號數(shù)的最高位是符號位计维,而且相信你們也一定知道負(fù)數(shù)在計算機(jī)中是以補(bǔ)碼的形式表示的袜香,那么為什么計算機(jī)需要提供補(bǔ)碼這個概念?相信大家一定會脫口而出鲫惶,是為了計算方便蜈首,那么你真的理解這種方便嗎?

這種方便不是為了計算機(jī)而設(shè)計的,這是為了我們程序員才設(shè)計的欢策,為了理解這種方便吆寨,首先你需要明確一個概念,計算機(jī)他不了解有符號數(shù)和無符號數(shù)的區(qū)別踩寇,這是人為定義的啄清,在計算機(jī)看來,這全部都是一串?dāng)?shù)據(jù)俺孙,他只會按照他的做法來處理這段數(shù)據(jù)辣卒。那么我們需要,無論什么情況下我們都能得到最正確的數(shù)據(jù)睛榄,即在我們需要的是無符號數(shù)計算的時候荣茫,計算機(jī)為我們提供的就是無符號數(shù)的結(jié)果,在我們需要有符號數(shù)計算的時候懈费,計算機(jī)為我們提供的就是有符號數(shù)计露。

有了這個需求,我們自然的希望計算機(jī)對這兩種要求所得出來的結(jié)果是一致的憎乙,而我們需要什么什么數(shù)據(jù)票罐,就把這個結(jié)果看成什么樣的數(shù)據(jù),于是補(bǔ)碼就出現(xiàn)了泞边,SF標(biāo)志位该押,CF標(biāo)志位和OF標(biāo)志位也就出現(xiàn)了,有了SF標(biāo)志位阵谚,CF標(biāo)志位和OF標(biāo)志位蚕礼,我們就能任意的將數(shù)據(jù)看成無符號數(shù)和有符號數(shù)了,例如梢什,你需要的是無符號數(shù)奠蹬,那么你可以無視SF的值,而你需要的是有符號數(shù)嗡午,你就可以通過SF的值來判斷數(shù)據(jù)的正負(fù)囤躁。

CF標(biāo)志位

CF是標(biāo)志寄存器的第0位,進(jìn)位標(biāo)志位荔睹,記錄最后一次執(zhí)行完語句后狸演,運(yùn)算結(jié)果的最高有效位向更高位的進(jìn)位值,或從更高位的借位值僻他,一般是進(jìn)行無符號數(shù)運(yùn)算時才會用CF標(biāo)志位宵距。

對于一個8位的寄存器來說,如果所存儲的值超過了他所能存儲的極限吨拗,那么他會把進(jìn)位值給丟掉满哪,而不是向更高位進(jìn)位婿斥,而這個丟棄的進(jìn)位值就來到了CF當(dāng)中。對加法而言翩瓜,CF中存儲的是無符號數(shù)向更高位的進(jìn)位值受扳,對減法而言,CF中存儲的是無符號數(shù)向更高位的借位值兔跌。

為什么說CF標(biāo)志位一般描述的是無符號數(shù)勘高?因為對于一個8位的有符號數(shù)來說,他的最高位是符號位坟桅,故然符號位是不可能從更高的位進(jìn)位或借位的华望,而只有最高位表示的還是數(shù)據(jù)的無符號數(shù)才能向更高位進(jìn)位或借位。

OF標(biāo)志位

OF是標(biāo)志寄存器的第11位仅乓,溢出標(biāo)志位赖舟,在進(jìn)行有符號數(shù)的運(yùn)算時,如果超過了機(jī)器所能表示的范圍稱作溢出夸楣,比如說宾抓,一個8位的有符號數(shù),他所能表示的極限就是-2^7到2^7-1豫喧,那么他如果表示了超過這個范圍的值石洗,就將產(chǎn)生溢出,因為要想超過這個范圍紧显,必定數(shù)據(jù)會影響到第7位的符號位讲衫,那么對于一個有符號數(shù)來說這就是一個錯誤的結(jié)果。

而OF標(biāo)志位就是為了存儲這個溢出而存在的孵班,試想涉兽,一段計算之后的值為正數(shù),但是他的OF標(biāo)志位值為1篙程,那么說明了什么枷畏?一個正數(shù)是以溢出而得到的,那他必然是一個負(fù)數(shù)超過了范圍虱饿。

好了矿辽,介紹完了與有符號數(shù)和無符號數(shù)有關(guān)的標(biāo)志位,現(xiàn)在來總結(jié)一下郭厌,計算機(jī)每一次運(yùn)算,OF雕蔽,CF折柠,SF的值都有可能變化(影響了第七位,OF就變化批狐,第七位溢出了扇售,CF就變化前塔,SF位是第七位的值),因為他不知道你需要的是什么數(shù)據(jù)承冰,所以我們只需要最后根據(jù)我們需要的數(shù)據(jù)再來觀察這3個標(biāo)志寄存位华弓,就可以得出我們需要的數(shù)據(jù)了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末困乒,一起剝皮案震驚了整個濱河市寂屏,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌娜搂,老刑警劉巖迁霎,帶你破解...
    沈念sama閱讀 211,496評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異百宇,居然都是意外死亡考廉,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,187評論 3 385
  • 文/潘曉璐 我一進(jìn)店門携御,熙熙樓的掌柜王于貴愁眉苦臉地迎上來昌粤,“玉大人,你說我怎么就攤上這事啄刹′套” “怎么了?”我有些...
    開封第一講書人閱讀 157,091評論 0 348
  • 文/不壞的土叔 我叫張陵鸵膏,是天一觀的道長膊升。 經(jīng)常有香客問我,道長谭企,這世上最難降的妖魔是什么廓译? 我笑而不...
    開封第一講書人閱讀 56,458評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮债查,結(jié)果婚禮上非区,老公的妹妹穿的比我還像新娘。我一直安慰自己盹廷,他們只是感情好征绸,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,542評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著俄占,像睡著了一般管怠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上缸榄,一...
    開封第一講書人閱讀 49,802評論 1 290
  • 那天渤弛,我揣著相機(jī)與錄音,去河邊找鬼甚带。 笑死她肯,一個胖子當(dāng)著我的面吹牛佳头,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播晴氨,決...
    沈念sama閱讀 38,945評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼康嘉,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了籽前?” 一聲冷哼從身側(cè)響起亭珍,我...
    開封第一講書人閱讀 37,709評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎聚假,沒想到半個月后块蚌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,158評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡膘格,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,502評論 2 327
  • 正文 我和宋清朗相戀三年峭范,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瘪贱。...
    茶點(diǎn)故事閱讀 38,637評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡纱控,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出菜秦,到底是詐尸還是另有隱情甜害,我是刑警寧澤,帶...
    沈念sama閱讀 34,300評論 4 329
  • 正文 年R本政府宣布球昨,位于F島的核電站尔店,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏主慰。R本人自食惡果不足惜嚣州,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,911評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望共螺。 院中可真熱鬧该肴,春花似錦、人聲如沸藐不。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,744評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽雏蛮。三九已至涎嚼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間挑秉,已是汗流浹背铸抑。 一陣腳步聲響...
    開封第一講書人閱讀 31,982評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留衷模,地道東北人鹊汛。 一個月前我還...
    沈念sama閱讀 46,344評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像阱冶,于是被迫代替她去往敵國和親刁憋。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,500評論 2 348

推薦閱讀更多精彩內(nèi)容