MCS51单片机指令系统复习
单片机89c51复习题

填空题(每空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指令系统-第三章 单片机的指令系统

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系列单片机指令系统及汇编语言程序设计

加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系列单片机指令系统

二. 机器语言指令格式
操作码 [操作数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单片机期末考试复习题(附答案)

单片机原理及应用复习一、填空题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电子信息通信工程专业课-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单片机复习题(含答案)

一、填空题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汇编语言的语句格式应符合下列结构: 【标号:】 操作码 【操作数】【;注释】 标号位于语句的开始,由以字母开头的字母和数字组成,它代表该语句的地址。 标号与操作码之间要用“:”隔开,标号与“:”之间不能有空格,“:”与操 作码之间可以有空格。 注释在语句的最后,以“;”开始,是说明性的文字,与语句的具体功能无关。 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 $
- 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