四、指令中常用符号说明 Rn/当前寄存器区的8个作寄存器RO~R7(n=0~7) Ri—一当前寄存器区可作地址寄存器的2个工作寄存器 RO和R1(i=0,1); direct-8位内部数据存储器单元的地址及特殊功能 寄存器的地址; #data表示8位常数立即数) #data16表示16位常数; add16表示16位地址; adr11-表示1位地址; rel—8位带符号的地址偏移量; bit-表示位地址 @—间接寻址寄存器或基址寄存器的前缀; ()—表示括号中单元的内容 ())表示间接寻址的内容
四、指令中常用符号说明 Rn——当前寄存器区的8个工作寄存器R0~R7(n=0~7); Ri——当前寄存器区可作地址寄存器的2个工作寄存器 R0和R1(i=0,1); direct——8位内部数据存储器单元的地址及特殊功能 寄存器的地址; #data——表示8位常数(立即数); #datal6——表示16位常数; add 16——表示16位地址; addrll——表示11位地址; rel——8位带符号的地址偏移量; bit——表示位地址; @——间接寻址寄存器或基址寄存器的前缀; ( )——表示括号中单元的内容 (( ))——表示间接寻址的内容;
五、MCS-51指令简介 1.以累加器A为目的操作数的指令 MOVA#data;A←#data MOV n=07,A←(Rn) MOV A(aR i=0,1A←(R MOV/A, direct;A←( Rn) direct为内部RAM或SFR地址 汪 例 MOV A,@R 以R的内容为地址,把该地址中 MOV RO.#30H 的内容送到A中去。A←-(R) MOV30H. #60H MoA,Ro;将R0的内容送到去。A-(R) MOVA, OR0 MOVA,#20H;(A)=20HA的内容为20H (A)= MOVA,20H;(A)=(20HA的内容为20H中的内容 注意以上两组指令的不同点
五、MCS-51指令简介 1. 以累加器A为目的操作数的指令 MOV A, #data ; A← #data MOV A, Rn ;n=0~7,A←(Rn ) MOV A, @Ri ; i=0,1 ,A← ((Ri )) MOV A, direct ; A←(Rn ) direct为内部RAM或SFR地址 注: MOV A, @Ri ; 以Ri的内容为地址,把该地址中 的内容送到A中去。A←((Ri )) MOV A, R0 ; 将R0的内容送到A去。A←(R0 )) MOV A, #20H ; (A) = 20H A的内容为20H MOV A, 20H ; (A) = (20H) A的内容为20H中的内容 注意以上两组指令的不同点 例: MOV R0, #30H MOV 30H, #60H MOV A, @R0 (A)=?
2.以R为目的操作数的指令 MOV R, A Rn←(A),n=0~7 MOV Rn,direct/ Rn+(direct MOV R, t data : Rtt data
2. 以Rn为目的操作数的指令 MOV Rn, A ;Rn ← (A) , n=0~7 MOV Rn , direct ;Rn ← (direct) MOV Rn ,#data ;Rn ← #data
3.以直接地址为目的操作数的指令 mov direct. A direct←-(A mov direct. r direct←(Rn MOV direct,@R;; directe((Ri)), i=0, 1 MoV direct, direct directe-(direct) Mov direct, #data: directt-# data
3. 以直接地址为目的操作数的指令 MOV direct, A ;direct← (A) MOV direct, Rn ; direct← (Rn ) , n=0~7 MOV direct, @Ri ; direct← (( Ri) ) , i=0,1 MOV direct, direct ;direct← (direct) MOV direct, #data ;direct← #data
4.以寄存器间接地址为目的操作数指令 MOV @R ,A ;(Ri)(A),i=0,1 MOV @R;, direct /((Ri) )(direct) MOV @R;, data;((Ri)#data
4. 以寄存器间接地址为目的操作数指令 MOV @Ri, A ; ((Ri ) )← (A) ,i=0,1 MOV @Ri , direct ; ((Ri ) )← (direct) MOV @Ri ,#data ; ((Ri ) )← #data