程序狀態(tài)字寄存器PSW介紹
psw.7 psw.6psw.5 psw.4 psw.3psw.2 psw.1 psw.0
本文引用地址:http://www.ex-cimer.com/article/201611/316790.htmcy | Ac | F0 | RS1 | RS0 | Ov | —— | P |
程序狀態(tài)字寄存器PSW是一個(gè)8位寄存器,用于存放程序運(yùn)行中各種狀態(tài)信息。其中,F(xiàn)0RS1RS0可以由用戶自己編程設(shè)定,其他位的狀態(tài)是根據(jù)程序執(zhí)行結(jié)果,由硬件自動設(shè)置的。下面分別介紹。
Cy:進(jìn)位標(biāo)志,是PSW中最常用的標(biāo)志位
功能有二:一、存放算術(shù)運(yùn)算的進(jìn)位標(biāo)志,在進(jìn)行加減運(yùn)算時(shí),若操作結(jié)果的最高位有進(jìn)位或借位,則自動置1,否則為0。二、在位操作中,作位累加器C使用。
Ac:輔助進(jìn)位標(biāo)志
在加減運(yùn)算時(shí),低4位向高4位進(jìn)位或借位時(shí),自動置1,否則為0。在BCD碼調(diào)整中也要用到Ac位的狀態(tài)。
F0:用戶標(biāo)志位
用戶可以編程對這個(gè)標(biāo)志位置位或復(fù)位,使用最為靈活,常用作數(shù)據(jù)收發(fā)標(biāo)志或準(zhǔn)備好的標(biāo)志。
RS1&RS0:寄存器組選擇位
選擇CPU當(dāng)前使用的工作寄存器組,單片機(jī)中共有四組工作寄存器,每次上電或復(fù)位后RS被置0,用戶可以編程選擇當(dāng)前工作寄存器,達(dá)到保護(hù)某一區(qū)R0~R7中數(shù)據(jù)的目的。
Ov:溢出標(biāo)志位
在帶符號的加減運(yùn)算中,若運(yùn)算超出了累加器A所能表示的符號數(shù)的有效范圍(-128~127),則自動置1,表示產(chǎn)生了溢出,說明運(yùn)算結(jié)果是錯(cuò)誤的。否則為0。
乘法運(yùn)算中,Ov=1表示乘積超過255,即乘積分別在A和B中;否則為0,表示乘積只在A中。
除法運(yùn)算中,Ov=1表示除數(shù)為0。
P:奇偶標(biāo)志位
表明累加器A中數(shù)據(jù)的奇偶性。若A中有奇數(shù)個(gè)“1”,則自動置1,否則為0。此標(biāo)志位常用于串行通信中的奇偶校驗(yàn)。
評論