您的位置:網(wǎng)站首頁 > 電器維修資料網(wǎng) > 正文 >
MCS-51單片機(jī)特殊功能存儲器
來源: 日期:2013-12-17 21:34:24 人氣:標(biāo)簽:
程序狀態(tài)字是一個(gè)8位寄存器,用于存放程序運(yùn)行的狀態(tài)信息,這個(gè)寄存器的一些位可由軟件設(shè)置,有些位則由硬件運(yùn)行時(shí)自動(dòng)設(shè)置。寄存器的各位定義如下(psw.1保留):
1)進(jìn)位標(biāo)志位(cy):此位有兩個(gè)功能:一是算術(shù)運(yùn)算時(shí),存放進(jìn)位或借位標(biāo)志(cy=1),可被硬件或軟件置位或清零:二是在位操作中作累加位使用。
2)輔助進(jìn)位標(biāo)志位(ac):進(jìn)行加、減運(yùn)算時(shí),當(dāng)?shù)?位向高4位進(jìn)位或借位時(shí),ac置位,否則被清零。
3)用戶標(biāo)志位(f0):供用戶設(shè)置的標(biāo)志位。可用于控制程序的執(zhí)行方向,若fo=o,則程序按地址遞增方向取指令;若fo=1,則程序按地址遞減方向取指令。
4)寄存器組選擇位(rs1和rso):
5)溢出標(biāo)志(ov):帶符號加減運(yùn)算時(shí),超出了累加器a所能表示的符號數(shù)的有效范圍(-128~+127)時(shí),即產(chǎn)生溢出,ov=1,表明運(yùn)算運(yùn)算結(jié)果錯(cuò)誤;如果ov=0,表明運(yùn)算結(jié)果正確。
61奇偶標(biāo)志位(p):累加器a的奇偶性,每個(gè)指令周期都由硬件來置位或清零,若a中有奇數(shù)個(gè)1,則p置位,否則清零。
2、中斷優(yōu)先權(quán)控制寄存器(ip)
1) ps:定義串行口的優(yōu)先級:
2) pt1、pt0:分別定義timer1、timeo的優(yōu)先級;
3) px1、px0:分別定義int1、int0的優(yōu)先級。
3、中斷允許控制寄存器(ie)
1) ea:ea=o禁止所有中斷,ea=1允許所有中斷:
2) es:激活串行口中斷;3) et1、eto:激活timer1、timero的中斷;4) ex1、ex0:激活int1、int0的中斷。
例:setea,開中斷(按位地址操作,setet1:激活timer1中斷movie.#88h:開中斷并激活timer1中斷{按字節(jié)地址操作)
4、數(shù)據(jù)指針(dptr:dpl、dph)
數(shù)據(jù)指針由寄存器dph和寄存器dpl組成,為16位寄存器,既可以按16位寄存器來使用,也可以按兩個(gè)8位寄存器來使用。
dptr主要是用來保存16位地址,當(dāng)對64kb片外數(shù)據(jù)存儲器尋址時(shí),可作為間接地址寄存器使用,此時(shí),使用如下兩條指令:
movxa,@dptr;外部ram單元送累加器(16位地址)movx@dptr,a;累加器送外部ram單元(16位地址)在訪問程序存儲器時(shí),dptr可用作基址寄存器,采用基址+變址尋址方式訪問程序存儲器,這條指令常用于讀取程序存儲器內(nèi)的表格數(shù)據(jù)。
movca,@a+dptr;查表數(shù)據(jù)送累加器(dptr為基址)
【看看這篇文章在百度的收錄情況】