MCS51单片机指令系统复习
单片机89c51复习题
![单片机89c51复习题](https://img.taocdn.com/s3/m/0e0db6b9f121dd36a32d8235.png)
填空题(每空1分)1、8051有(111 )条指令。
2、晶振的频率为6MHz时,一个机器周期为()μS。
3、单片机是把中央处理器,()()()以及I/O接口电路等主要计算机部件集成在一块集成电路芯片上的微型计算机。
4、传输速率是用每秒传送数据位的()来表示,把它定义为(),单位为()。
5、所谓最小应用系统是指能维持单片机运行的()配置系统。
6、单片机复位时P0的值为()。
7、当PSW4=0,PSW3=1时,工作寄存器Rn,工作在第()区。
8、当允许定时器1工作在方式1时,控制字TMOD应为()。
9、当8255工作在方式0时,使PA、PB、PC全用作输出口,控制字应为()。
10、在R7初值为00H的情况下,DJNZ R7,rel指令将循环执行()次。
11、当允许定时/计数器1溢出中断时IE控制字应为()。
12、欲使P1口的低4位输出0,高4位不变,应执行一条()命令。
13、MCS-51单片机系列有()个中断源,可分为()个优先级。
上电复位时()中断源的优先级别最高。
14、计算机三大总线分别为()、()和控制总线。
15、74LS138是具有3个输入的译码器芯片,用其输出作片选信号,最多可在()块芯片中选中其中任一块。
17、MCS-51指令系统中,ADD与ADDC指令的区别是()。
18、8051单片机有()个16位定时/计数器。
19、特殊功能寄存器中,单元地址()的特殊功能寄存器,可以位寻址。
20、如果存储单元的数据位为8位,当它存放无符号数时,则该数的范围为()。
21、MCS-51单片机有()个并行输入/输出口,当系统扩展外部存储器或扩展I/O口时,()口作地址低8位和数据传送总线,()口作地址总线高8位输出,()口的相应引脚会输出控制信号。
22、数据指针DPTR有()位,程序计数器PC有()位。
23、EPROM27256芯片的存储容量为(),它的地址线有()根。
24、欲使P1口的低4位输出0,高4位不变,应执行一条()命令。
专题四 MCS-51指令系统-第三章 单片机的指令系统
![专题四 MCS-51指令系统-第三章 单片机的指令系统](https://img.taocdn.com/s3/m/149b31335a8102d276a22ff8.png)
8、指令字节数和机器周期数
第三章 单片机的指令系统
是必须掌握的内容。 Ø 一台计算机所有指令的集合, 称为该计算机的指令系统。 Ø 各种计算机都有专用的指令系统。
Ø 本章主要介绍单片机的寻址方式及指令系统,
学时分配:2学时 1—53+97+98+99 2学时 54—96 100
第三章 单片机的指令系统 • 3.1 MCS-51 指令系统概述
类
按指令字长分类
按指令执行时间分类
3.2 寻址方式
• 寻址方式:7种
– – – – – – – – – 寄存器寻址 直接寻址 寄存器间接寻址 立即寻址 变址间接寻址 相对寻址 位寻址 寻址方式与寻址空间 MCS-51单片机的两个突出特点
寄存器寻址——操作数存放在寄存器中
寄存器为 MOV A,R0 MOV R0,#01001111B R0~R7,A,DPTR,C SETB RS0 MOV R3,#56H
目的寻址为直接寻址
2) 20H ~2FH 可位寻址区的寻址方式
字节寻址方式: 直接寻址 direct
寄存器间接寻址@R0,@R1
位寻址: bit 直接寻址
例: MOV 26H,C ; 位寻址 (26H)1位
MOV 26H,A ;字节寻址(26H)8位
3) 30H ~7FH 数据缓冲区的寻址方式
字节寻址方式: 直接寻址 direct
MOV A,#23H
PUSH ACC
;
A寄存器寻址
POP
0E0H
;直接寻址
4、可做片内RAM的指针有:
R0,R1, 四个组共有8个 预先设置RS1、RS0,以选定组。 SETB RS0 CLR RS1; 1组
第三章 MCS-51系列单片机指令系统及汇编语言程序设计
![第三章 MCS-51系列单片机指令系统及汇编语言程序设计](https://img.taocdn.com/s3/m/999e61ce58f5f61fb736667b.png)
加1指令(5条)
INC INC INC INC INC A direct @Ri Rn DPTR
减1指令(4条)
DEC DEC DEC DEC A direct @Ri Rn
十进制调整指令(1条)
DA A ; DA指令只能放在加法指令后应用,把A中按二进制 相加后的结果调整成按BCD数相加的结果 。
堆栈操作类指令(2条)
PUSH direct POP direct 例:SP=07H,(35H)=55H,指令PUSH 35H执行后,55H送入 08H地址单元,SP=08H。
交换指令(5条)
XCH A,Rn XCH A,@Ri XCH A,direct XCHD A,@Ri SWAP A 例:A=80H,R0=32H,(32H)=FFH,指令XCHD A,@R0执行 后,A=8FH,(32H)=F0H。
• 作业: • 计算 2B46H * 8AH ,将计算结果放在片内 • RAM 4FH、4EH、4DH单元,4DH放最低 位。
3. 逻辑操作类指令(共24条)
“与”操作指令(6条)
ANL ANL ANL ANL ANL ANL A,direct A,#data A,Rn A,@Ri direct,A direct,#data
逻辑操作类指令共有24条,主要包括“与”、“或”、“异或”、求反、 清0、左右移位等逻辑操作。
“或”操作指令(6条)
ORL A,direct ORL A,#data ORL A,Rn ORL A,@Ri ORL direct,A ORL direct,#data 例:(21H)=3AH,A=14H,指令ORL 21H,A执行后,(21H)=3EH。
CHENG: MOV A , R2 • MOV B , R3 • MUL AB • MOV R5 , A • MOV R6 , B • MOV A , R2 • MOV B , R4 • MUL AB • ADD A , R6 • MOV R6 , A • MOV A , B • ADDC A , #00H • MOV R7 , A • RET
第三章 MCS-51系列单片机指令系统
![第三章 MCS-51系列单片机指令系统](https://img.taocdn.com/s3/m/e68889601711cc7931b716b2.png)
二. 机器语言指令格式
操作码 [操作数1] [操作数2]
单片机有单字节、双字节和三字节指令。
汇编语言指令中操作码和操作数是指令主体,称为
指令可执行部分,指令表中可查出对应指令代码。 举例:
汇编语言: MOV MOV MOV A,R0 R6,#32H 40H,#100H 机器语言: E8H 7E 32H 75 40 64H 11101000 01110101 01111110 01000000 00110010 01100100
MOV A,40H ;A(40H)
例:设存储器两个单元的内容如图所示, 执行指令 MOV A,40H后 A = 56H? 直接寻址方式对数据操作时,地址是 固定值,而地址所指定的单元内容为 变量形式。
bit @
:特殊目的寄存器或内部数据RAM中可直接寻址的位。 :间接寻址方式中,表示间址寄存器的符号
/ :位操作指令中,表示对该位先取反再参与操作,但不影 响该位原值。 X :片内RAM的直接地址或寄存器 (X) :在间接寻址方式中,表示直接地址X中的内容;在间接 寻址方式中, 表示由间址寄存器X指出的地址单元中的内容。 → ←
直接寻址
例:MOV A,3AH(操作码:E5)
可以直接寻址的存储器主要有特殊功能寄存器SFR、 内部数据存储器及位地址空间。
1000H是假设的该指
令存放的起始地址。
程序存储区 PC:1000H 1001H E5H 3AH 3AH
片内RAM区
ACC 10H 10H
返回
指令操作数是存储器单元地址,数据在存储器单元中。
操作码 PC:1000H 1001H 1002H 90H 3FH A6H 立即数低位 DPH DPH 3FH 3F DPL DPL A6H A6 DPTR
51单片机期末考试复习题(附答案)
![51单片机期末考试复习题(附答案)](https://img.taocdn.com/s3/m/1a70e4ae690203d8ce2f0066f5335a8102d266ef.png)
单片机原理及应用复习一、填空题1.单片机又称为微控制器,将CPU、存储器、I/O集成到一个芯片上。
2.单片机的RST/VPD引脚为单片机的商店复位或掉电保护端,但单片机振荡器工作时,该引脚上只要出现持续两个机器周期的高电平,就可实现复位操作,是单片机回到初始状态。
̅̅̅̅端保持低电平。
3.单片机只访问外部程序存储器,必须使EA4.单片机程序地址空间中0000H代表复位入口地址、0003H代表外部中断0入口地址、000BH代表定时器/计数器0溢出中断入口地址、0013H代表外部中断1中断入口地址、001BH 代表定时器/计数器1溢出中断入口地址、0023H代表串口中断入口地址。
通常在这些地址中存放一条无条件转移指令。
5.扩展片外数据存储器地址空间与片内数据存储器地址空间可以重叠,是因为访问片内、外使用不同的指令,访问片外采用MOVX指令。
6.单片机应用程序一般放在ROM中,数据一般存放到RAM中。
7.单片机复位后,寄存器PC为0000H、ACC为00H、PSW为00H、SP为07H,此时选择第0组工作寄存器作为通用寄存器。
8.机器指令由操作码和操作数两部分构成。
9.操作数表示参加操作的数本身或操作数所在的地址。
10.单片机特殊寄存器的选址方式只能是直接寻址。
11.可用于寄存器间接寻址的寄存器包括R0、R1、DPTR,这些寄存器起到地址指针的作用。
12.要用传输指令访问单片机片外RAM,它的指令操作助记符是MOVX。
13.指令AJMP的跳转范围是2K,LJMP可在64KB范围内无条件转移。
14.执行PUSH时堆栈指针SP先加1,执行POP堆栈指令是SP后减1,子程序调用LCALL指令隐含2次压栈,子程序返回指令RET隐含2次出栈(弹栈)。
15.绝对调用指令ACALL addr所能调用子程序的范围是2K,LCALL addr指令则是64K。
16.DB、DW、DS伪指令都只能对程序存储器起作用,不能对数据存储器进行初始化。
2022最新单片机考试复习题20223
![2022最新单片机考试复习题20223](https://img.taocdn.com/s3/m/0e0172c19fc3d5bbfd0a79563c1ec5da50e2d65d.png)
2022最新单片机考试复习题20223电子信息通信工程专业课-2022最新单片机考试复习题第3章MCS-51的指令系统一、填空1.执行下列指令组后,A=(),B=()。
MOVA,#33H;ADDA,#49H;MOVB,A;ADDA,#00H;DAA;2.已知(R1)=3FH,(3FH)=11H,(40H)=00H执行下列指令组后(R1)=(),(3FH)=(),(40H)=()。
INCR1;INC40H;3.已知(31H)=21H,(32H)=04H,执行下列指令组后(31H)=(),(32H)=()PUSH31HPUSH32HPOP31HPOP32H4.执行下列指令组后,A=(),OV=(),P=()。
MOVADDSUBB()。
MOVMOV6.假定累加器A的内容为30H,执行指令:后,把程序存储器()单元的内容送累加器A中。
7.假定(A)=85H,(R0)=20H,(20H)=0AFH。
执行指令:后,累加器A=(),Cy=(),AC=(),OV=()。
8.假定(A)=85H,(20H)=0FFH,(Cy)=1,执行指令:ADDCA,20H后,累加器A=(),Cy=(),AC=(),OV=()。
电子信息通信工程专业课-2022最新单片机考试复习题9.假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00H。
执行指令:INCINCINC后,累加器A=(),R3=(),30H=(),40H=()。
10.假定(A)=56H,(R5)=67H。
执行指令:ADDA,R5DAA后,累加器A=(),Cy=()。
11.假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFH。
执行指令:DECDECDEC后,A=(),R7=(),30H=(),40H=()。
12.假定(A)=0C5H,执行指令:SWAPA后,累加器A的内容为()。
13.执行下列指令序列:MOVC,P1.0ANLC,P1.1ANLC,/P1.2MOVP3.0,C后,所实现的逻辑运算式为()。
51单片机复习题(含答案)
![51单片机复习题(含答案)](https://img.taocdn.com/s3/m/147c0bd580eb6294dd886c71.png)
一、填空题1、A T89S51单片机为8 位单片机,共有40 个引脚。
2、MCS-51系列单片机的典型芯片分别为8031 、8051 、8751 。
3、A T89S51访问片外存储器时,利用ALE 信号锁存来自P0口发出的低8位地址信号。
4、A T89S51的P3口为双功能口。
5、A T89S51内部提供 2 个可编程的16 位定时/计数器,定时器有4 种工作方式。
6、A T89S51有 2 级中断, 5 个中断源。
7、A T89S51的P2 口为高8位地址总线口。
8、设计一个以A T89C51单片机为核心的系统,如果不外扩程序存储器,使其内部4KB 闪烁程序存储器有效,则其EA* 引脚应该接+5V9、单片机系统中使用的键盘分为独立式键盘和行列式键盘,其中行列式键盘的按键识别方法有扫描法和线反转法。
10、A T89S51内部数据存储器的地址范围是00H~7FH ,位地址空间的字节地址范围是20H~2FH ,对应的位地址范围是00H~7FH ,外部数据存储器的最大可扩展容量是64K 。
11、如果(A)=34H,(R7)=0ABH,执行XCH A, R7;结果(A)= 0ABH ,(R7)= 34H 。
12、在R7初值为00H的情况下,DJNZ R7,rel指令将循环执行256 次。
13、欲使P1口的低4位输出0,高4位不变,应执行一条ANL P1, #0F0H 命令。
14、若CPU使用的是寄存器第1组,R0~R7的地址范围是08H-0FH。
15、单片机进行串行通信时,晶振频率最好选择11.0592MHz16、当MCS-51执行MOVX A,@R1指令时,伴随着RD* 控制信号有效。
17、若A中的内容为67H,那么,P标志位为 1 。
18、A T89S51唯一的一条16位数据传送指令为MOV DPTR,data16 。
19、LJMP的跳转范围是64K,AJMP的跳转范围是2K B,SJMP的跳转范围是±128 B (或256B)。
第3章_MCS-51单片机指令系统及汇编语言程序设计2
![第3章_MCS-51单片机指令系统及汇编语言程序设计2](https://img.taocdn.com/s3/m/929d8bde28ea81c758f57821.png)
3. 汇编语言的语句格式是什么?使用标号有什么限制?注释段起什么作用? 答案: MCS-51汇编语言的语句格式应符合下列结构: 【标号:】 操作码 【操作数】【;注释】 标号位于语句的开始,由以字母开头的字母和数字组成,它代表该语句的地址。 标号与操作码之间要用“:”隔开,标号与“:”之间不能有空格,“:”与操 作码之间可以有空格。 注释在语句的最后,以“;”开始,是说明性的文字,与语句的具体功能无关。 4. MCS-51汇编语言有哪几条常用伪指令?各起什么作用? 答案: ORG:汇编程序起始地址,用来说明其后程序段在存储器中存放的起始地址; EQU:赋值指令,用来给变量标号赋予一个确定的数值; DB:定义数据字节,指令按字节数的形式把数据存放在存储单元中; DW:定义数据字,按字(双字节)的形式把数据存放在存储单元中; DS:定义存储区,从指定的地址单元开始,保留一定数量的存储单元; BIT:位定义,其功能是把位地址赋给字符名称; END:汇编结束,表明汇编语言程序结束。
2.顺序程序
顺序程序是指程序中没有使用转移类指令的程序段,机器执行这 类程序时也只需按照先后顺序依次执行,中间不会有任何分支、循环, 也不需要调用子程序。 例:将一个单字节十六进制数转换成BCD码。 解:算法分析。单字节十六进制数在0~255之间,将其除以100后, 商为百位数;余数除以10,商为十位数,余数为个位数。 设单字节数存放在40H,转换后,百位数存放在R0中,十位数存 放在R1中,个位数存放在R2中,具体程序如下: ORG 0030H MOV A, 40H ;将单字节十六进制数送入A中 MOV B,#64H ;将100送入B中, #64H可直接写成#100 DIV AB MOV R0,A ;百位数送R0,余数在B中 XCH A,B ;余数送入A中 MOV B,#0AH ;将10送入B中, #0AH可直接写成#10 DIV AB ;商为十位数,余数为个位数 MOV R1,A MOV R2,B SJMP $
51单片机复习题
![51单片机复习题](https://img.taocdn.com/s3/m/6a04b61e59eef8c75fbfb36f.png)
单片机0一、填空题1.在8051汇编指令格式中,唯一不能缺省的部分是。
2.当MCS-51执行MOVC A,@A+PC指令时,伴随着PSEN 读控制信号有效。
3.当MCS-51单片机复位时PSW=00H,这时当前的工作寄存器区是0 区,R4所对应的存储单元地址为04 H。
4.MCS-51有4个并行I\O口,其中P0—P3是准双向口,所以,由输出转输入时必须先写入 1 。
5.MCS-51的堆栈是软件填写堆栈指针临时在内部RAM 内开辟的区域.6.在MCS-51单片机应用系统中,外部设备与外部数据存储器传送数据时,使用MOVEX 指令。
二、单选题1.MCS-51系列单片机的指令系统共(A)条指令。
A、111B、112C、113D、1152.在CPU内部,反映程序运行状态或反映运算结果的寄存器是(B )。
A、PCB、PSWC、AD、SP3.外扩程序存储器的高8位地址来自(C )口。
A、P0B、P1C、P2D、P34.要访问MCS-51的特殊功能寄存器应选用的寻址方式是(C)。
A、寄存器间接寻址B、变址寻址C、直接寻址D、相对寻址5.MCS-51的并行I/O口信息有两种读取方法,一种是读引脚,还有一种是(A )。
A、读锁存器B、读数据C、读A累加器D、读CPU6.8051单片机中,唯一一个用户可以使用的16位寄存器是(D)。
A、PSWB、ACCC、SPD、DPTR7.指令MOV A ,20H的字节数是(B )。
A、1B、2C、3D、48.下列指令能使累加器A的最高位置1的是(D )。
A、ANL A,#7FHB、ANL A,#80HC、ORL A,#7FHD、ORL A,#80H9.8031单片机的定时器T1用作计数方式时(A )。
A、外部计数脉冲由T1(P3.5)输入B、外部计数脉冲由内部时钟频率提供C、外部计数脉冲由T0(P3.4)输入D、以上均不是10.指令 MOV R0,#20H中的20H是指(A)。
MCS-51单片机练习题
![MCS-51单片机练习题](https://img.taocdn.com/s3/m/438f0ef5f242336c1fb95e28.png)
MCS-51单片机复习题(-)填空:1.计算机中常用的码制有原码、反码和补码。
2.十进制数29的二进制表示为00011101.3.十进制数-29的8位补码表示为11100011。
4.单片微型计算机由CPU、存储器和I/O接口三部分组成。
5.若不使用MCS-51片内存储器引脚/EA必须接地。
6.微处理器由-寄存器堆、控制器和运算器三部分组成,7.当MCS-51引脚ALE信号有效时,表示从PO口稳定地送出了低8位地址。
8.MCS-51的P0口作为输出端口时,每位能驱动8个SL型TTL负载。
9. MCS - 51有4个并行1/O口,其中P0-P3是准双向口,所以由输出转输人时必须先写人“1”。
10. MCS-51的堆栈是软件填写堆栈指针临时在片内数据存储器内开辟的区域。
11.MCS-51中凡字节地址能被8整除的特殊功能寄存器均能位寻址。
12.MCS-51系统中,当/PSEN信号有效时,表示CPU要从程序存储器读取信息。
*13.当使用8751且/EA=1,程序存储器地址小于l000H时,访问的是片内ROM..(可选)14.MCS-51特殊功能寄存器只能采用直接寻址方式.15. MCS-51有4组工作寄存器,它们的地址范围是00H-1FH。
16.MCS-51片内20H-2FH范围内的数据存储器,既可以字节寻址又可以位寻址。
17.若用传送指令访问MCS-51的程序存储器,它的操作码助记符应为MOVC。
18.访问MCS - 51片内RAM应该使用的传送指令的助记符是MOV.19.当MCS-51使用间接寻址方式访问片内RAM高128 B时,会产生错误。
20.设计8031系统时,P0、P2口不能用作-般I/O口。
21. MCS - 51可扩展片外RAM 64 KB,但当外扩I/O口后,其外部RAM寻址空间将变小。
22.计算机的系统总线有地址总线、控制总线和数据总线。
23.输人输出设备是计算机与外部世界交换信息的载体。
第3章 MCS-51单片机指令系统
![第3章 MCS-51单片机指令系统](https://img.taocdn.com/s3/m/f585cd7431b765ce050814a4.png)
(1)内部数据存储器的低128个字节单元 (00H~7FH)。例: MOV A, 40H ,表示把内 部RAM 40H单元的内容传送给A。 假设40H单元中的内容为2BH,结果是将直接地 址40H单元中的数据2BH传送到累加器A中。
第三章 MCS-51单片机指令系统
3.2.2 直接寻址
(2)特殊功能寄存器。 特殊功能寄存器只能用直接寻址方式进行访问。 对于特殊功能寄存器,在助记符指令中可以直接 用符号来代替地址。例: MOV A, P0 ,表示把 P0口(地址为80H)的内容传送给A。
3.3.1 内部数据存储器传送指令
1.立即数传送指令
MOV A,#data ;A←data MOV Rn,#data ;Rn←data,n=0~7 MOV direct,#data ;direct←data MOV @Ri,#data ;(Ri)←data,i=0,1 MOV DPTR,#data16 ;DPTR←data16 前四条指令将8位立即数传送到指定的存储单元中。 最后一条指令将16位立即数传送到数据指针 DPTR中,其中高8位送入DPH,低8位送入DPL。
(3)三字节指令 编码格式为:
例如数据传送指令MOV 20H,#3AH的编码格式为:
3.2 寻址方式
第三章 MCS-51单片机指令系统
所谓寻址,就是寻找操作数的真正地址,寻址方 式,就是指寻找操作数地址的方式。
在用汇编语言编程时,数据的存放、传送、运算 都要通过指令来完成。 编程者必须自始至终都要 十分清楚操作数的位置, 以及如何将它们传送到适 当的寄存器去参与运算。每一种计算机都具有多 种寻址方式。寻址方式的多少是反映指令系统优 劣的主要指标之一。
2. 汇编语言
汇编语言就是用助记符表示的指令,汇编语言与 机器语言一一对应。用汇编语言编写程序,每条 指令的意义一目了然,给程序的编写、阅读和修 改带来很大方便。而且用汇编语言编写的程序占 用内存少,执行速度快,尤其适用于实时应用场 合的程序设计。因此,在单片机应用系统中主要 是用汇编语言来编写程序。 汇编语言的缺点:缺乏通用性,程序不易移植, 是一种面向机器的低级语言。使用汇编语言编写 程序时,必须熟悉机器的指令系统、寻址方式、 寄存器的设置和使用方法。每种计算机系统都有 它自己的汇编语言。不同计算机的汇编语言之间 不能通用。
第3章MCS-51单片机指令系统
![第3章MCS-51单片机指令系统](https://img.taocdn.com/s3/m/f38c8765f342336c1eb91a37f111f18583d00cea.png)
第3章MCS-51单片机指令系统3.1概述3.1.1指令格式3.1.2指令的三种表示形式3.1.3指令的字节数1. 单字节指令(49条)图3-1 MOVA,Rn指令的格式2单片机原理及其接口技术(第2版)2. 双字节指令(46条)3. 三字节指令(16条)3.1.4指令的分类1. 数据传送指令(28条)2. 算术运算指令(24条)3. 逻辑操作和环移指令(25条)4. 控制转移指令(17条)5. 位操作指令(17条)3.1.5指令系统综述1. 指令系统中所用符号的说明2. 指令对标志位的影响3.2寻址方式3.2.1寄存器寻址图3-2寄存器寻址示意图单片机原理及其接口技术(第2版) 3 3.2.2直接寻址图3-3直接寻址示意图3.2.3立即寻址3.2.4寄存器间址图3-4寄存器间址寻址示意图3.2.5变址寻址图3-5变址寻址示意图4单片机原理及其接口技术(第2版)3.2.6相对寻址图3-6相对寻址示意图3.2.7位寻址3.3数据传送指令3.3.1内部数据传送指令(15条)1. 立即寻址型传送指令2. 直接寻址型传送指令3. 寄存器寻址型传送指令4. 寄存器间址型传送指令5. 内部数据传送指令的使用图3-7 8×C552/8051指令的数据传送方式单片机原理及其接口技术(第2版) 5 3.3.2外部数据传送指令(7条)1. 16位数传送指令2. 外部ROM的字节传送指令图3-8 0~9平方值表3. 外部RAM的字节传送指令3.3.3堆栈操作指令(2条)图3-9例3.8的堆栈变化示意图6单片机原理及其接口技术(第2版)3.3.4数据交换指令(4条)3.4算术与逻辑运算和移位指令3.4.1算术运算指令(24条)1. 加法指令2. 减法指令3. 十进制调整指令4. 乘法和除法指令3.4.2逻辑运算指令(20条)1. 逻辑与运算指令2. 逻辑或指令3. 逻辑异或指令4. 累加器清零和取反指令3.4.3移位指令(5条)单片机原理及其接口技术(第2版)7图3-10例3.26附图3.5控制转移和位操作指令3.5.1控制转移指令(17条)1. 无条件转移指令图3-11 AJMP指令转移范围8单片机原理及其接口技术(第2版)图3-12例3.29附图图3-13带符号数的比较方法3. 子程序调用和返回指令图3-14二级子程序嵌套及断点地址存放单片机原理及其接口技术(第2版)9图3-15例3.33附图10单片机原理及其接口技术(第2版)4. 空操作指令3.5.2位操作指令(17条)1. 位传送指令2. 位置位和位清零指令3. 位运算指令4. 位控制转移指令习题与思考题3.1指令通常有哪三种表示形式?各有什么特点?3. 2 MCS-51指令按功能可以分为哪几类?每类指令的作用是什么?3. 3 MCS-51共有哪七种寻址方式?各有什么特点?3. 4指出下列每条指令源操作数的寻址方式和功能。
MCS-51第三章MCS-51单片机的指令系统
![MCS-51第三章MCS-51单片机的指令系统](https://img.taocdn.com/s3/m/b72721c4a1c7aa00b52acb61.png)
双字节
MOV direct2, direct1;(direct1)→direct2
三字节
例.已知R0=20H,(20H)=11H, (30H)=22H,(40H)= 33H问8051执行如下指令后,累加器A、50H、R5、 20H和60H单元中的内容是什么?
School of Engineering & Automation · Tianjin Polytechnic University
School of Engineering & Automation · Tianjin Polytechnic University
微机原理及应用
5.基址变址寄存器间接寻址
MCS-51单片机的变址寻址是以数据指针DPTR或 PC 作为基址寄存器以累加器A作为变址寄存器,以 两者内容相加形式新的16位地址作为操作数地址,再 寻址该地址读出数据。 MOVC A, @ A+PC ① 变址寻址方式只能对ROM寻址,只能读,不能 存数(查表) MOVC A, @ A+PC ② 变址寻址指令 MOVC A, @ A+DPTR PC不变
微机原理及应用
例.已知累加器 A中有一个0~9范围内的数,用以 上查表指令编出能查出0~9的平方值的程序。设平方 表首地址为2000H。 a.采用DPTR作为基址寄存器, 程序为: MOV DPTR, #2000H MOVC A, @A+DPTR 若累加器处值为3,得到一个新地址2003H,从该地 址中查表得9并存入累加器A中
微机原理及应用
c.寄存器寻址型传送指令 MOV A , Rn;Rn→A MOV direct , Rn;Rn→(direct) MOV Rn , A;A→Rn MOV direct , A;A→(direct) d.寄存器间址型传送指令 MOV A , @Ri;((Ri))→A MOV @Ri, A ; A → (Ri) MOV direct , @Ri;((Ri))→direct
51单片机指令系统练习题
![51单片机指令系统练习题](https://img.taocdn.com/s3/m/9aa87f8aba1aa8114531d901.png)
.MCS—51单片机指令系统及程序设计一、判断题()1.MCS—51单片机的指令格式中操作码与操作数之间必须用“,”分隔。
()2.MCS—51指令:MOV A,#40H ;表示将立即数40H传送至A中。
()3.MCS—51指令:MOV A,@R0 ;表示将R0指示的地址单元中的内容传送至A中。
()4.MCS—51指令:MOVX A,@DPTR ;表示将DPTR指示的地址单元中的内容传送至A中。
()5.MCS—51的数据传送指令是把源操作数传送到目的操作数,指令执行后,源操作数改变,目的操作数修改为源操作数。
()6.MCS—51指令中,MOVX为片外RAM传送指令。
()7.MCS—51指令中,MOVC为ROM传送指令。
()8.将37H单元的内容传送至A的指令是:MOV A,#37H。
()9.MCS—51指令中,16位立即数传送指令是:MOV DPTR,#data16。
()10.MCS—51单片机,CPU对片外RAM的访问只能用寄存器间接寻址的方式,且仅有4 条指令。
()11.如JC rel发生跳转时,目标地址为当前指令地址加上偏移量。
()12.对于8051单片机,当CPU对内部程序存储器寻址超过4K时,系统会自动在外部程序存储器中寻址。
()13.指令MUL AB执行前(A)=F0H,(B)=05H,执行后(A)=FH5,(B)=00H。
()14.已知:DPTR=11FFH 执行INC DPTR后,结果:DPTR=1200H。
()15.已知:A=11H B=04H,执行指令DIV AB后,其结果:A=04H,B=1 CY=OV=0。
()16.已知:A=1FH,(30H)=83H,执行 ANL A,30H 后,结果:A=03H (30H)=83H P=0。
()17.无条件转移指令LJMP addr16称长转移指令,允许转移的目标地址在128KB空间范围内。
()18.MCS—51指令系统中,执行指令FGO bit F0 ,表示凡用到F0位的指令中均可用FGO 来代替。
单片机模拟复习题答案
![单片机模拟复习题答案](https://img.taocdn.com/s3/m/8d211be7856a561252d36f10.png)
一、填空题1、MCS─51设置 4 组工作寄存器,每组中有 8 个工作寄存器。
应通过PSW特殊功能寄存器 RS1 的 RS0 两位选择工作寄存器组。
2、MCS─51有 4 个8位并行I/O口,其信息读取有两种方法是:读锁存器和读引脚3、在直接寻址方式中,只能使用8 位二进制数作为直接地址,因此其寻址对象只限于内部RAM4、通常把CPU完成一个基本操作所需要的时间称为机器周期,执行一条指令所需要的时间称为指令周期。
5、单片机的EA端的功用是外部程序存储器访问允许端(低电平有效),8031的EA端应接到低电平。
其原因是 8031无片内程序存储器。
6、在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的地址。
(间接寻址的范围是内部数据RAM的寄存器RAM采用寄存器R0,R1对低128位单元进行寻址;外部数据RAM,R0,R1提供低8位地址访问外部低256位字节,或采用16位的DPTR作为间接寄存器)7、64KB的SRAM存储器芯片需要 16 根地址线和 8 根数据线。
*(地址总线的宽度为16位,低8位由P0口提供,高8位由P2口提供;数据总线的宽度为8位,由P0口提供)8、MCS—51可提供程序和数据两种存储器、最大存储空间可达 64KB 的两个并行存储器扩展系统。
9、MCS—51单片机的中断系统有 5 个中断请求源。
各中断源对应的入口地址在程序存储器空间的 0003H-0023H(每隔8个单元)地址段内。
(外部中断0,定时器T0,外部中断1,定时器T1,串行口中断,【定时器T2】。
52单片机有6个中断请求源)10、MCS—51单片机定时/计数器的定时功能是通过对时钟脉冲源的计数来实现的。
使用时,必须在编程时设定为 C/T=0 。
1、MCS—51单片机内部RAM的工作寄存器区共有32 个单元,分为 4 组工作寄存器,每组8 单元。
2、单片机系统复位后,内部RAM工作寄存器的当前工作寄存器是第0 组,8个工作寄存器的单元地址是00H ~07H 。
第三章 MCS-51单片机指令系统
![第三章 MCS-51单片机指令系统](https://img.taocdn.com/s3/m/8abc5c16650e52ea54189800.png)
位操作类指令(17条)
位操作指令实际就是布尔处理机的指令系统,这 为开关量控制提供了非常有效的手段。
位传送
位置位复位
位运算 位控制转移
位数据传送指令(2条)
MOV MOV
C , bit bit,C
例:片内RAM中(20H)=7FH,执行指令
MOV C,07H 则C=0
位置位复位指令(4条)
调用与返回指令组(4条)
长调用指令 绝对调用指令 子程序返回指令
LCALL addr16 ACALL addr11 RET
中断服务程序返回指令 RETI
空操作指令(1条)
NOP
例:把2000H开始的外部RAM单元中的数据送到3000H
开始的外部RAM单元中,数据个数存放在内部RAM 35H单元。
ANL(ORL,XRL) A , { #data ; direct ; @Ri ; Rn }
2. 直接地址单元与累加器A、立即数之间的逻辑操作(6条)
ANL(ORL,XRL) direct , { A ; #data }
清零与取反指令(2条)
清零: 取反:
CLR A CPL A
循环移位指令(4条)
2. 带进位加法指令(4条) ADDC A , { #data ; direct ; @Ri ; Rn }
3. 带借位减法指令(4条) SUBB A , { #data ; direct; @Ri ; Rn }
影响所有标志位状态
例: 执行指令 MOV A , #0C2H ADD A , #0A9H 对PSW相应状态位的影响如下 1 1 1
3.2 MCS-51指令分类介绍
共分5大类,111条指令。
1.数据传送类指令(29条) 2.算术运算类指令(24条) 3.逻辑运算及移位类指令(24条) 4.控制转移类指令(17条) 5.位操作类指令(17条)
51单片机复习题及答案
![51单片机复习题及答案](https://img.taocdn.com/s3/m/f7cb33f9fc4ffe473268ab82.png)
51单片机复习题及答案一、填空题(25分,每空1分)1. AT89S51单片机为8 位单片机2. MCS-51系列单片机的典型芯片分别为 8031 、 8051 、 8751 。
3. AT89S51的异步通信口为全双工(单工/半双工/全双工)4. AT89S51有 2 级中断, 5 个中断源5. AT89S51内部数据存储器的地址范围是00H~7FH ,位地址空间的字节地址范围是20H~2FH ,对应的位地址范围是00H~7FH ,外部数据存储器的最大可扩展容量是64K。
6. AT89S51单片机指令系统的寻址方式有__寄存器寻址__、____直接寻址____、___寄存器间接寻址_____、_立即寻址____、基址寄存器加变址寄存器寻址。
7. 如果(A)=34H,(R7)=0ABH,执行XCH A, R7;结果(A)= 0ABH ,(R7)=34H 。
8. 82C55可以扩展3个并行口,其中8条口线具有位操作功能;9. 当单片机复位时PSW=00H,这时当前的工作寄存器区是0区,R4所对应的存储单元地址为04H。
10. 若A中的内容为67H,那么,P标志位为1。
11. 74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中8 片芯片。
二、判断以下指令的正误:(5分)(1)MOV 28H,@R4;(×)(2)INC DPTR;(√)(3)DEC DPTR;(×)(4)CLR R0;(×)(5)MOV T0,#3CF0H;(×)三、简答题1、如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:POP DPH;POP DPL;POP SP;则:(DPH)= ___3CH___;(DPL)=___5FH___;(SP)=___50H___;(6分)2、采用6MHz的晶振,定时1ms,用定时器方式0时的初值应为多少?(请给出计算过程)(6分)解:∵采用6MHZ晶振∴机器周期为2us(213-X)×2×10-6=1×10-3∴X=7692(D)=1E0CH=1 1110 0000 1100(B),化成方式0要求格式为 1111 0000 1100 B即0F00CH综上可知:TLX=0CH, THX=0F0H 3. 分析下列程序的功能(5分) PUSH ACC PUSH B POP ACC POP B解: 该程序的功能是通过累加器ACC 与寄存器B 数据交换。
单片机复习题(含答案)
![单片机复习题(含答案)](https://img.taocdn.com/s3/m/367619a983d049649b665891.png)
复习题1、MCS-51有中断源,有个中断优先级,优先级由软件填写特殊功能寄存器加以选择。
外部中断请求信号有触发和触发两种触发方式。
外部中断的中断矢量地址为 H,串行口中断的矢量地址为 H。
2、MCS-51系统中,当信号有效时,表示CPU要从_______存储器读取信息。
3、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以_______寻址。
4、MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写________特殊功能寄存器加以选择。
5、定时器T0和定时器T1的中断标志分别是和。
6、按长度分,MCS-51指令有_____字节的、_____字节的和_____字节的。
7、MCS-51片内设置有4KB的ROM,当端保持高电平时,PC(程序计数器)值超过 H时,将自动转向执行程序存储器的程序。
外部扩展时地址总线有根,数据总线有根。
8、在MCS-51单片机中,PC和DPTR都用于提供地址,但PC是为访问存储器提供地址,而DPTR是为访问存储器提供地址。
9、MCS-51复位后·工作寄存器则缺省采用第 组,这组寄存器的地址范围是从 H~ H开始。
·SP的内容为 H , P0的内容为 H。
· MOV A , SP指令执行后 ,A寄存器的内容将等于 H, PSW寄存器的内容将等于H。
10. 8031AH·其引脚必须接 ,因为其片内无 存储器。
·可做通用I/O的至少有 口的8条I/O线 , 口作地址/数据总线 , 传送地址码的 8位 , _ 口作地址总线 , 传送地址码的 8位。
·指令用来对 RAM进行读写操作。
·外部扩展时地址总线有 根,数据总线有 根。
11.存储器组织·8051单片机的存储器从物理结构上可划分 个空间,从逻辑上分别可划分个空间。
·8051片内RAM有 个字节 , 片外RAM寻址范围为 个字节。
单片机技术高级复习题
![单片机技术高级复习题](https://img.taocdn.com/s3/m/eff51134eefdc8d376ee32d4.png)
单片机技术高级复习题一、填空题(1)片内外硬件部分1.MCS—51单片机的CPU主要功能为(运算)和(控制)。
2.MCS-51单片机有5个中断源,分别是(外中断0 )、(外中断1)、(定时器 0 )、(定时器 1)、(串口中断)。
3.8051单片机有两种复位方式,既上电复位和手动复位,复位后PC = (0000H),PSW = (00H),SP =(07H),P0 = P1 = P2 = P3 = (FFH)。
4.寄存器PSW中的RS1和RS0的作用(选择当前积存器工作组)。
5.寄存器PSW中的RS1和RS0的作用是(选择当前工作寄存器组)。
6.寄存器PSW中的RS1和RS0的内容为0,1是选择(1工作寄存器组)。
7.51系列单片机P3口第二功能中,外中断0,定时器0分别是(P3.2 P3.4)引脚。
8.当振荡频率为12MHz时,单片机的一个机器周期为(1 s)9.单片机有两个定时器T0、T1,定时器的工作方式由(TMOD)寄存器决定,定时器的启动与溢出由(TCON)寄存器控制。
10.ADC0809是(8位模/数转换)芯片,DAC0832是(8位数/模转换)芯片11.MCS-51单片机的串行口通讯的波特率是指(每秒传送的二进制数的位数)(2)指令与程序部分1.MOVC A,@A+DPTR是(查表)指令,MOVX A, @DPTR是( 内外数据传送)指令。
2.长转移指令操作码是(LJMP),长调用指令操作码是(LCALL) 。
3.当A=05H, R0=30H时,(30H)=00H,执行MOV @R0, A指令后,A=(05H),R0=(30H),(30H)=(05H)。
4.A=05H,DPTR=1000H时,执行MOVX @DPTR,A指令后,是将A中数据05H传送到(片外1000H )单元。
5. MCS-51单片机指令系统有7种寻址方式,其中MOV A,#DATA 为(立即数)寻址;MOV A, Rn 为 ( 寄存器) 寻址; MOV C, bit 为 (位 ) 寻址。
第03章 MCS - 51单片机指令系统
![第03章 MCS - 51单片机指令系统](https://img.taocdn.com/s3/m/40db97056c85ec3a87c2c5f7.png)
第 二 节 数 据 传 送 指 令
第3章 MCS-51单片机指令系统
(2)将数据传送到工作寄存器Rn的指令(3条) 例:已知累加器A的内容为30H,寄存器R7的内容 为50H,内部RAM30H单元的内容为40H,内部 RAM50H单元的内容为10H,请指出下列每条指令 执行以后相应单元内容的变化.
第 一 节 指 令 格 式 与 寻 址 方 式
第3章 MCS-51单片机指令系统
(6) 相对寻址:
在MCS -51 指令系统中设有转移指令, 分 为直接转移和相对转移指令, 在相对转移 指令中采用相对寻址方式。这种寻址方式 是以PC的内容为基本地址, 加上指令中给 定的偏移量作为转移地址,也就是目的地 址(用来修改PC的值)。指令中给出的偏 移量是一个 8 位带符号的常数, 可正可负, 其范围为-128~+127。
第3章 MCS-51单片机指令系统
(1) 立即寻址:
立即寻址方式是将操作数直接存放在指令字 节中,作为指令的一部分存放在代码段里。 比如:MOV A, #3AH 跟在指令操作码后面的数就是参加运 算的数, 该操作数称为立即数。立即数有一字 节和二字节两种可能, 如指令: MOV DPTR, #0DFFFH 上述两条指令均为立即寻址方式, 第 一条指令的功能是将立即数 3AH送累加器A中, 第二条指令的功能是将立即数 0DFFFH送数据 指针DPTR中(DPH, 0FFH→DPL)。
第 二 节 数 据 传 送 指 令
第3章 MCS-51单片机指令系统
3.2数据传送指令
程序中使用最多的指令,主要用于内部RAM、 寄存器、外部RAM以及程序存储器之间的数据 传送、保存以及交换。 工作原理:将源操作数简单地传给目的 操作数,而源操作数的内容不变,PSW的内容 不改变。 分类:内部数据传送指令、外部传送指 令、查表指令、交换指令和堆栈指令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、程序存储器数据传送指令
(ROM数据传送指令)2条
指令格式: MOVC A, MOVC A,
@A+DPTR ;A ←((A)+(DPTR)) @A+PC ;A ←((A)+(PC))
四、数据交换指令
字节交换指令指内部RAM中的某个单元和累加器A之间进行 数据交换,可以是整个字节,也可以是半个字节。包含3种交换 方式:
1、整字节交换指令:
XCH A, Rn
; (A) ← (Rn)
XCH A, data ; (A) ← (data)
XCH A, @Ri ; 部RAM单元
2、半字节交换指令 XCHD A, @Ri ; (A) 3~0 ← →((Ri))3~0
执行指令前 A A7 A6 A5 A4 A3 A2 A1 A0 (Ri) D7 D6 D5 D4 D3 D2 D1 D0
二、带进位的加法运算
ADDC ADDC ADDC ADDC
A,Rn ; A←(A)+(Rn)+(CY) A, data ; A ←(A)+(data)+(CY) A, @Ri ; A ←(A)+((Ri))+(CY) A, #data ;A ←(A)+data+(CY)
三、减法指令
该类指令特点:进位标志位参加运算
➢ 3.内部RAM单元之间的数据传送指令:( 5条)
MOV data,data ; (data目) ← (data源 ) MOV data,@Ri ; (data)←((Ri)) MOV data,Rn ; (data) ←(Rn) MOV Rn,data ; (Rn) ←(data) MOV @Ri,data ; ((Ri))←(data)
减法指令只有带借位的指令,而没有不带借位的指令。
减法指令对PSW的影响与加法指令相同,只要把加法中的 进位改为借位即可。
四、乘法运算
MUL AB 指令含义:将(A) ×(B),乘积的低位字节放 在A中,高位字节放在寄存器B中。 对PSW状态位的影响: Cy位被清0 乘积大于FFH时,OV位为1。
一、内部RAM数据传送指令组
➢ 1.立即数传送指令 ( 4条+1条) MOV A,#data ; (A )← data MOV data , #data ; (data) ← data MOV @Ri, #data ; ((Ri)) ←data MOV Rn,#data; (Rn) ←data MOV DPTR,#data16; (DPTR) ←data
指令执行后 A A7 A6 A5 A4 D3 D2 D1 D0
(Ri) D7 D6 D5 D4 A3 A2 A1 A0
五、堆栈操作指令
堆栈操作指令包含入栈(PUSH)和出栈(POP)。在使用堆栈 之前要首先给堆栈指针SP赋值。
指令格式:PUSH data ; SP ← (SP)+1, ((SP))←(data) POP data ; (data)← ((SP)) ,SP ← (SP)-1
➢ 2.通过累加器A的数据传送指令:( 6条)
MOV A,data ; A ← (data) MOV data, A ; (data) ← A
MOV A,@Ri ; A←((Ri))
MOV @Ri,A ; ((Ri)) ← A
MOV A,Rn ; A← (Rn)
MOV Rn, A ; (Rn) ← A
3.2 MCS-51单片机指令系统
MCS-51单片机指令系统包括111条指令 按功能可以划分为以下5类:
1. 数据传送和交换指令(28条) 2. 算术运算指令(24条) 3. 逻辑运算指令(25条) 4. 控制转移指令(17条) 5. 位操作指令(17条)
3.2.1 数据传送和交换类指令
常用助记符: MOV 单片机内部RAM中的数据传递 MOVX 累加器和单片机外部数据存储器间数据传递 MOVC 累加器和程序存储器之间的数据传递 XCH 累加器和某个内部RAM单元进行数据交换 XCHD 累加器和某个内部RAM单元进行低半字节数据交换 PUSH 将某个内部RAM单元的数据压入堆栈 POP 将堆栈内的数据弹出
3-2-2 算术运算指令
算术运算指令有加法、减法、乘法和除法四类,除加1和 减1指令,其他所有的指令都将影响PSW的标志位。
程序状态字PSW
D7 D6 D5 D4 D3 D2 D1 D0
CY AC F0 RS1 RS0 OV
P
进位 辅助 自定 通用寄存器 溢出 借位 进位 标志 选择位 标志
奇偶 校验
二、外部RAM数据传递指令 (4条)
使用DPTR和Ri进行间接寻址 MOVX A, @DPTR ;A ←((DPTR))片外 MOVX @DPTR,A ;((DPTR))片外←(A) 注意: 该指令用于在单片机和外部RAM、扩展I/O的数据 传送; 使用Ri时,只能访问低8位地址为00H~FFH地址段; 使用DPTR时,能访问0000H ~ FFFFH地址段。
注意:先入后出原则 程序举例:
MOV SP , #30H PUSH SBUF; SP ← (SP)+1, 31H←(SBUF) PUSH 60H ; SP ← (SP)+1, 32H←(60H) …… POP 60H ; 60H ←( 32H), SP ← (SP)-1 POP SBUF;SBUF ←(31H), SP ←(SP)-1
SUBB SUBB SUBB SUBB
A, Rn ;A ←(A)-(Rn)-(CY) A, data ;A ←(A)-(data)-(CY) A, @Ri ;A ←(A)-((Ri))-(CY) A, #data ;A ←(A)-data-(CY)
这些指令的功能均是从累加器A中减去不同寻址方式得到 的操作数及进位位CY,差送入A中。
算术运算类指令
常用助记符: ADD 加法 ADDC 带进位加法 SUBB 带借位减法 MUL 乘法 DIV 除法 INC 加1/增量 DEC 减1/减量 DA 十进制调整
一、不带进位的加法指令
ADD A,Rn ;A ←(A)+(Rn) ADD A, data ;A ←(A)+(data) ADD A, @Ri ;A ←(A)+((Ri)) ADD A, #data ;A ←(A)+data