<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子百科>主機配件>cpu>

標志寄存器的作用

2019年07月22日 10:13 lq 作者: 用戶評論(0

  標志寄存器中存放的有條件標志,也有控制標志,它對于處理器的運行和整個過程的控制有著非常重要的作用。條件標志主要包括進位標志、奇偶標志、輔助進位標志、零標志、符號標志、溢出標志等等,控制標志主要有跟蹤標,下面就隨小編一起去了解一下關于標志寄存器的相關知識吧。

  標志寄存器標志位置

  進位標志:

  用于反映運算是否產生進位或借位。如果運算結果的最高位產生一個進位或借位,則CF置1,否則置0。運算結果的最高位包括字操作的第15位和字節操作的第7位。移位指令也會將操作數的最高位或最低位移入CF。

  奇偶標志:用于反映運算結果低8位中“1”的個數?!?”的個數為偶數,則PF置1,否則置0。

  輔助進位標志:在字節操作時低半字節向高半字節進位或借位,字操作時低字節向高字節進位或借位,AF置1,否則置0。

  零標志:用于判斷結果是否為0。運算結果0,ZF置1,否則置0。

  符號標志:用于反映運算結果的符號,運算結果為負,SF置1,否則置0。因為有符號數采用補碼的形式表示,所以SF與運算結果的最高位相同。

  溢出標志:反映有符號數加減運算是否溢出。如果運算結果超過了8位或者16位有符號數的表示范圍,則OF置1,否則置0。

  控制標志:

  跟蹤標志:當TF被設置位1時,CPU進入單步模式,所謂單步模式就是CPU在每執行一步指令后都產生一個單步中斷。主要用于程序的調試。8086/8088中沒有專門用來置位和清零TF的命令,需要用其他辦法。

  中斷標志:決定CPU是否響應外部可屏蔽中斷請求。IF為1時,CPU允許響應外部的可屏蔽中斷請求。

  方向標志:決定串操作指令執行時有關指針寄存器調整方向。當DF為1時,串操作指令按遞減方式改變有關存儲器指針值,每次操作后使SI、DI遞減。

  

標志寄存器的作用

  標志寄存器中狀態標志的作用是什么

  標志寄存器里面有標志位用來判斷CPU的狀態:

  比如:OF: 溢出標志位OF用于反映有符號數加減運算所得結果是否溢出。如果運算結果超過當前運算位數所能表示的范圍,則稱為溢出,OF的值被置為1,否則,OF的值被清為0.

  DF: 方向標志DF位用來決定在串操作指令執行時有關指針寄存器發生調整的方向。

  IF: 中斷允許標志IF位用來決定CPU是否響應CPU外部的可屏蔽中斷發出的中斷請求。但不管該標志為何值,CPU都必須響應CPU外部的不可屏蔽中斷所發出的中斷請求,以及CPU內部產生的中斷請求。具體規定如下:

 ?。?)、當IF=1時,CPU可以響應CPU外部的可屏蔽中斷發出的中斷請求;

 ?。?)、當IF=0時,CPU不響應CPU外部的可屏蔽中斷發出的中斷請求。

  TF: 狀態控制標志位是用來控制CPU操作的,它們要通過專門的指令才能使之發生改變

  SF: 符號標志SF用來反映運算結果的符號位,它與運算結果的最高位相同。在微機系統中,有符號數采用補碼表示法,所以,SF也就反映運算結果的正負號。運算結果為正數時,SF的值為0,否則其值為1。

  ZF: 零標志ZF用來反映運算結果是否為0。如果運算結果為0,則其值為1,否則其值為0。在判斷運算結果是否為0時,可使用此標志位。

  AF: 下列情況下,輔助進位標志AF的值被置為1,否則其值為0:

 ?。?)、在字操作時,發生低字節向高字節進位或借位時;

 ?。?)、在字節操作時,發生低4位向高4位進位或借位時。

  PF: 奇偶標志PF用于反映運算結果中“1”的個數的奇偶性。如果“1”的個數為偶數,則PF的值為1,否則其值為0。

  CF: 進位標志CF主要用來反映運算是否產生進位或借位。如果運算結果的最高位產生了一個進位或借位,那么,其值為1,否則其值為0。)

  標志寄存器的作用

  標志寄存器有一個很大的用處,那就是它能夠利用上面的標志來讓用戶了解此時cpu所處的狀態。如果標志是of的話,這就是溢出標志,如果符號的加減運算結果超出了所能運算的范圍的話,就是溢出了,而且此時of的值就是固定的,也就是1,不是的話,就是0了。標志df是方向標志,這個標志能夠指導寄存器指針調整的方向。

  if是中斷允許的標志,這個標志的主要用處就在于當cpu的外部有中斷請求的話,它能夠決定是否針對這一情況予以反應。但是實際運行過程中,對于這種中斷要求的反應是不會受到標志值的影響的。tf是狀態控制標志,這個標志作用非常重要,因為它主要用來控制cpu,而且它本身非常的穩定,除非會有專門的指令,它才會有所變化。sf是符號的標志,這個標志就是用來反應運算的結果的,但是它也就只能反應運算結果的正負而已,如果是正的話,就為0,如果是負的話,就為1。

  總的來說,標志寄存器的作用主要有三個,分別是存儲計算機執行之后的一些結果,提供一些依據給cpu的運行,對于cpu的一些工作的方式給予一定的控制等等。在標志寄存器中有很多的指令,要想了解并且很好的運用標志寄存器,必須要真正的了解這些指令的含義。

  指令中中的pushf、popf,雖然它們很相似,但是功能卻大不相同,pushf主要是把值壓棧,但是popf主要是將數據從棧中彈出,然后把它們輸入寄存器之中,兩者可以說是完全相反的。寄存器中還有一類條件轉移指令,條件的話,是指是否有需要修改ip的條件,而轉移的話,就是修改ip的一個過程,兩者結合,才能完成。

  

標志寄存器的作用

非常好我支持^.^

(5) 100%

不好我反對

(0) 0%

( 發表人:李倩 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
      <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
      <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
      <acronym id="s8ci2"></acronym>
      <acronym id="s8ci2"><center id="s8ci2"></center></acronym>