色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 第13章 標(biāo)志寄存器(X86匯編教程)

          第13章 標(biāo)志寄存器(X86匯編教程)

          作者: 時(shí)間:2016-12-01 來(lái)源:網(wǎng)絡(luò) 收藏
          其實(shí)這章的內(nèi)容不怎么重要,看不懂也沒(méi)關(guān)系,這些都是后臺(tái)自己處理的,標(biāo)志寄存器很少有人自己操作,就好像你不知道你的心臟每分鐘跳幾下,但你仍然活得好好的這樣,另外,.之前居然有人轉(zhuǎn)載了某章節(jié),雖然那一章我沒(méi)寫不能轉(zhuǎn)載......

          這一章簡(jiǎn)單介紹一個(gè)寄存器.為之后的章節(jié)做鋪墊(由于咱是懶人,下一章幾時(shí)寫未定.)

          本文引用地址:http://cafeforensic.com/article/201612/324269.htm

          標(biāo)志寄存器(PSW),是對(duì)計(jì)算的結(jié)果以及CPU的某些狀態(tài)進(jìn)行保存用的.

          為了實(shí)現(xiàn)一些功能,CPU在執(zhí)行某些指令的時(shí)候,會(huì)把計(jì)算產(chǎn)生的一些東西保存到標(biāo)志寄存器,一般都是算數(shù)指令.比如說(shuō)計(jì)算結(jié)果是正數(shù)還是負(fù)數(shù).

          186的標(biāo)志寄存器是16位的,除了幾個(gè)沒(méi)用到的位,每一位都有不同含義和名字.名字表如下:

          15 | 14 | 13 | 12 | 11 | 10 | 09 | 08 | 07 | 06 | 05 | 04 | 03 | 02 | 01 |00
          [ ][ ][ ][][OF][DF][IF][TF ][SF][ZF][ ][AF][ ][PF][ ][CF]

          [第0位CF]
          這個(gè)用來(lái)記錄相關(guān)指令執(zhí)行后超出界限的那一位數(shù)據(jù).
          比如:
          加法的時(shí)候:
          mov ah,10000000B
          mov al,10000000B
          add ah,al
          結(jié)果:ah=00000000B(理論上有個(gè)1在第9位,但ah是8位寄存器,所以第9位不放在這里)
          第9位放在CF里!

          減法計(jì)算的時(shí)候能計(jì)算向高位借的數(shù)值:
          mov ax,0000H
          sub ax,0001H
          結(jié)果:ax=FFFFH(向第17位借了一個(gè)數(shù)字,于是CF=1(表示有借位!),如果沒(méi)借數(shù)字則CF=0)
          [第2位PF]
          用來(lái)記錄相關(guān)指令執(zhí)行后,其結(jié)果所有bit位中1的個(gè)數(shù)是否為偶數(shù),是則PF=1否則PF=0
          [第6位ZF]
          用來(lái)記錄相關(guān)指令執(zhí)行結(jié)果是否為0,如果為0則ZF=1否則ZF=0,比如:
          mov AX,1
          sub AX,1
          結(jié)果為0則ZF=1
          影響標(biāo)志位的指令,比如add,sub,mul,div,inc,or,and等,大多都是運(yùn)算指令,有些則沒(méi)有影響,如mov,push,pop等,大多都是傳送指令.
          [第7位SF]
          記錄指令執(zhí)行后的結(jié)果是否為負(fù)數(shù),如果是負(fù)數(shù)則=1否則=0
          [第8位TF]
          如果TF=1則CPU運(yùn)行一行代碼后就產(chǎn)生中斷,如果為0則代碼一直運(yùn)行下去.
          [第9位IF]
          控制是否響應(yīng)外中斷,如果為1則響應(yīng),為0則不響應(yīng),STI指令能將其設(shè)為1,CLI指令設(shè)為0
          [第10位DF]
          給一些指令用的...
          [第11位OF]
          溢出標(biāo)志,計(jì)算結(jié)果如果產(chǎn)生溢出則OF=1否則OF=0
          溢出實(shí)例:
          mov ah,FFh
          add ah,FFh
          計(jì)算結(jié)果大于ah所能存放的最高數(shù)值,則會(huì)溢出

          本章結(jié)束..



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉