單片機(jī)指令系統(tǒng)
3.1 MCS-51指令簡(jiǎn)介
3.2 指令系統(tǒng)
3.1 MCS-51指令簡(jiǎn)介
二、MCS-51系列單片機(jī)指令系統(tǒng)分類
按尋址方式分為以下七種:按功能分為以下四種:
1、立即立即尋址 1、數(shù)據(jù)傳送指令位操
2、直接尋址 2、算術(shù)運(yùn)算指令
3、寄存器尋址 3、邏輯運(yùn)算指令
4、寄存器間接尋址指令 4、控制轉(zhuǎn)移類指令
5、相對(duì)尋址 5、位操作指令
6、變址尋址
7、位尋址
三、尋址方式
3、寄存器間接尋址 MOV A, @R1
操作數(shù)是通過寄存器間接得到的。
4、立即尋址 MOV A, #40H
操作數(shù)在指令中直接給出。
5、基址寄存器加變址寄存器尋址
以DPTR或PC為基址寄存器,以A為變址寄存器,
以兩者相加形成的16位地址為操作數(shù)的地址。
MOVC A, @A+DPTR
MOVC A, @A+PC
四、指令中常用符號(hào)說明
Rn——當(dāng)前寄存器區(qū)的8個(gè)工作寄存器R0~R7(n=0~7);
Ri——當(dāng)前寄存器區(qū)可作地址寄存器的2個(gè)工作寄存器R0和R1(i=0,1);
direct——8位內(nèi)部數(shù)據(jù)存儲(chǔ)器單元的地址及特殊功能寄存器的地址;
#data——表示8位常數(shù)(立即數(shù));
#datal6——表示16位常數(shù);
add 16——表示16位地址;
addrll——表示11位地址;
REL——8位帶符號(hào)的地址偏移量;
bit——表示位地址;
@——間接尋址寄存器或基址寄存器的前綴;
( )——表示括號(hào)中單元的內(nèi)容
(( ))——表示間接尋址的內(nèi)容;
五、MCS-51指令簡(jiǎn)介 1. 以累加器A為目的操作數(shù)的指令
2. 以Rn為目的操作數(shù)的指令
3. 以直接地址為目的操作數(shù)的指令
4. 以寄存器間接地址為目的操作數(shù)指令
應(yīng)用舉例1
8段數(shù)碼管顯示
應(yīng)用舉例2
3.2 指令系統(tǒng)
2、堆棧操作指令
3. 累加器A與外部數(shù)據(jù)傳輸指令
4. 查表指令
MOVC A, @A+PC 例子:
5. 字節(jié)交換指令
6. 半字節(jié)交換指令
二、算術(shù)操作類指令
PSW寄存器
2. 帶進(jìn)位加法指令
3. 加1指令
4. 十進(jìn)制調(diào)整指令
5. 帶借位減法指令(Subtraction)
6. 減1指令(Decrease)
7. 乘法指令(Multiplication)
8. 除法指令(Division)
三、邏輯運(yùn)算指令 1. 簡(jiǎn)單邏輯操作指令
2. 循環(huán)指令
帶進(jìn)位左循環(huán)指令(Rotate Accumulator Left through Carry flag)
右循環(huán)指令(Rotate Accumulator Right)
帶進(jìn)位右循環(huán)指令(Rotate A Right with C)
3. 邏輯與指令
4. 邏輯或指令
5. 邏輯異或指令
四、控制轉(zhuǎn)移類指令 1. 跳轉(zhuǎn)指令
相對(duì)轉(zhuǎn)移指令 SJMP REL PC←(PC)+2 PC←(PC)+REL
程序中標(biāo)號(hào)與地址之間的關(guān)系
2. 條件轉(zhuǎn)移指令
3. 比較不相等轉(zhuǎn)移指令
4. 減 1 不為 0 轉(zhuǎn)移指令
5. 調(diào)用子程序指令
7. 中斷返回指令
五、位操作指令 1. 數(shù)據(jù)位傳送指令
2. 位變量邏輯指令
3. 條件轉(zhuǎn)移類指令
標(biāo)簽:
單片機(jī)
指令系統(tǒng)
上傳時(shí)間:
2013-10-27
上傳用戶:xuanjie