按关键词阅读: 大学 第三 湘潭 课件 单片机
9、以8位的累加器A作为变址寄存器 , 内容相加形成16位新的地址 。
MOVC A ,A +PC ;(A)+(PC) A MOVC A ,A +DPTR ;(A)+(DPTR) A,五、基寄存器加变址寄存器间接寻址,四、立即寻址,3.2 MCS-51的寻址方式,3.2 MCS-51的寻址方式,六、相对寻址,相对寻址方式是以当前的程序计数器PC值加上指令中给定的偏移量rel所得的结果作为转移地址 。
一般将相对转移指令操作码所在地址称为源地址 , 转移后的地址称为目的地址 , 则有: 目的地址 = 源地址 + 相对转移指令字节数 + rel,3.2 MCS-51的寻址方式,七、位寻址,在计算机中 , 某些特定的操作数可 。
10、以按8位二进制数中的某一位为单位进行存取和操作 。
位寻址方式是其操作数是8位二进制中的某一位,例315:MOVC , 01H;01H为位地址 ,表示(20H).1的内容传送到进位累加器 。
例316:SETBEA 表示中断允许寄存器IE的位7置1,3.2 MCS-51的寻址方式,八、页面寻址,当用寄存器间接寻址方式访问外部扩展的数据存贮器 , 当用R0、R1作地址指针访问片外RAM时的寻址方式称为页面寻址 。
页面地址由P2口的内容决定 , 页面内的地址由R0或R1的内容决定,例317: MOVP2 , #0A0H MOVR0 , #01H MOVA , #10H MOVXR0 , A,1)对程序存贮器只能采用立即寻址和基寄存器 。
11、加变址寄存器间接寻址寻址方式 。
(2)对特殊功能寄存器空间只能采用直接寻址方式(可以用符号来代表地址) , 不能采用寄存器间接寻址方式 。
(3)内部RAM高128B只能采用寄存器间接寻址方式 , 不能采用直接寻址方式 。
(4)内部RAM低128B 既能采用寄存器间接寻址方式 , 又能采用直接寻址方式 。
(5)外部扩展的数据存贮器只能采用MOVX指令访问,虽然MCS51单片机的寻址方式有多种 , 但指令对哪一个存贮器空间进行操作是由指令的操作码和寻址方式确定的 。
总的来说 , 具有以下几点原则,3.2 MCS-51的寻址方式,MCS51汇编语言有42种操作码助记符 , 33种操作功能 , 111种指令 , 可分为: 数据传送类( 。
12、29) 算术操作类(24) 逻辑操作类(24) 位操作类 (17) 控制转移类(17,3.3 MCS-51的指令系统,3.3.1 数据传送类指令,数据数据传送类指令一般的操作是把源操作数传送到目的操作数 , 指令执行后 , 一般是源操作数不改变 , 目的操作数修改为源操作数 。
可以在累加器A、工作寄存器R0R7、内部数据存贮器、外部数据存贮器和程序存贮器之间进行 。
这类指令有:MOV , MOVX , MOVC , XCH , XCHD , SWAP , POP , PUSH共8种,一、以累加器A为目的操作数的指令,把源操作数的内容送ACC , 源操作数的内容不变化,二、以Rn为目的操作数的指令,3.3.1 数据传送类指令,源操作数的内容送 。
13、入当前工作寄存器区的R0R7,MOV Direct, A ;寄存器寻址 MOV Direct, Rn ;寄存器寻址 MOV Direct, Direct ;直接寻址 MOV Direct,Ri ;寄存器间接寻址 MOV Direct, #data ;立即寻址,三、以直接寻址的单元为目的操作数的指令,3.3.1 数据传送类指令,源操作数的内容送入直接地址指出的存贮单元,四、以寄存器间接寻址的单元为目的操作数的指令,MOV Ri , A ;寄存器寻址 MOV Ri, Direct ;直接寻址 MOV Ri, #data ;立即寻址,3.3.1 数据传送类指令,源操作数的内容送入R0或R1指出的 。
14、内部RAM中,五、16位数据传送指令,MOV DPTR, #data16 ;立即寻址 把16位立即数送到数据指针DPTR 。
高8位 DPH , 低8位 DPL eg: MOV DPTR, #8000H,3.3.1 数据传送类指令,六、查表指令,1、MOVCA ,A+PC ;(A)+PC)A,A)作为无符号数和PC内容(下一条指令的起始地址)相加后得到一个16位的地址 , 将该地址的内容 A,2、MOVCA ,A+DPTR ;(A)+DPTR)A,A)作为无符号数和DPTR内容相加后得到一个16位的地址 , 将该地址的内容 A,3.3.1 数据传送类指令,3.3.1 数据传送类指令,七、累加器A与片外RAM 。
15、数据传送指令,eg: MOV DPTR, #0650H ;设(0650H)=20H MOV R0 , #0FAH;(0FAH)=10H MOV P2, #20H MOVX A,R0 ;(20FAH) A MOVX DPTR , A ;(A) 650H单元,八、栈操作指令,1、压栈指令,PUSH Direct;寄存器间接寻址,eg: (SP)=60H , (A)=30H , (B)=70H,3.3.1 数据传送类指令,堆栈指针SP+1 SP; 然后把直接地址的内容送到栈指针寻址的内部RAM单元中,2、弹栈指令,POP Direct;寄存器间接寻址,eg:(SP)=62H , (62H)=70H , (61H)=30 。
16、H,3.3.1 数据传送类指令,堆栈指针SP寻址的内部RAM单元送入直接地址指 出的字节单元中; SP-1 SP,九、字节交换指令内容交换,XCH A , Rn ;寄存器寻址, (A)(Rn) XCH A, Direct;直接寻址 , (A)(direct) XCH A, Ri ;寄存器间接寻址 , (A)(Ri) XCHD A, Ri ;寄存器间接寻址 ;(A)03(Ri)03 SWAP A;寄存器寻址, (A)03(A)47,3.3.1 数据传送类指令,eg: (A)=80H , (R7)=08H XCH A , R7 ;(A)(R7) (A)=80H , (70H)=88H XCHA , 70H ;(A 。
来源:(未知)
【学习资料】网址:/a/2021/0121/0021119584.html
标题:湘潭|湘潭大学单片机课件第三章( 二 )