MSC51存储器配置 FFFFH FFFFH FFH A EOH SFR 80H 数据缓冲区 30H 20H 位寻址区 寄存器区 0000HI 00H 0000HI ROM 内RAM 外RAM
0000H FFFFH 0000H FFFFH 00H FFH 寄存器区 位寻址区 数据缓冲区 SFR 20H 30H 80H E0H A MSC51存储器配置 ROM 内RAM 外RAM
第3章McS-51指令系统 指令的格式: LOOP: MOV RO 将R0的内容送A [标号]操作码第一操作数第二操作数 [注释] (目的操作数)(源操作数) 注:黑色的内容不是必须的
第3章 MCS-51指令系统 指令的格式: LOOP: MOV A, R0 ;将R0的内容送A [标号] 操作码 第一操作数 第二操作数 [注释] (目的操作数) (源操作数) 注:黑色的内容不是必须的
32数据传输类指令 1.以累加器A为目的操作数的指令 MOv A. t data A←#data MOV A. R ;n=0-7,A←(Rn) MOV A, R i=0, 1,A+((R ) MOVA, direct;A←( direct) direct为内部RAM或SFR地址 注 MOVA,@R1以R的内容为地址,把该地址中的内容送到 A中去。A←(R) MOVA,R0将R0的内容送到A去。A←(R MOVA,#20H;(A)=20HA的内容为20H MOVA,20H;(A)=(20H)A的内容为20H中的内容 注意以上两组指令的不同点
3.2 数据传输类指令 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←(direct) 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中的内容 注意以上两组指令的不同点
例:MOVA,@RQ0;A←((R0) 这条指令表示从R中找到源操作数40H 所在单元的地址,把该地址中的内 容传送给A(存放地址的寄存器称为 间址寄存器) 34H 40H 设指令执行前(R0)=34H (34H)=40H 执行指令后,(A)=40H RO 34H
例: MOV A,@R0 ;A←((R0)) 这条指令表示从R0中找到源操作数 所在单元的地址,把该地址中的内 容传送给A(存放地址的寄存器称为 间址寄存器). A 40H 34H 40H R0 34H … … 40H 设指令执行前 (R0)=34H (34H)=40H 执行指令后,(A)=
2.以Rn为目的操作数的指令 MOVR,A;Rn←(A),n=0~7 Mov Rn, direct Rn(direct) MOV R t dat a ←#data
2. 以Rn为目的操作数的指令 MOV Rn, A ;Rn ← (A) , n=0~7 MOV Rn , direct ;Rn ← (direct) MOV Rn ,#data ;Rn ← #data