编程实现将单片机c语言编程300例内部RAM30H为首地址的数据块传送到外部RAM2000H开始的单元中,数据块的长度存放于内部RAM

第1页/共18页
单片机汇编程序设计练习
一、存储器之间的数据传送
1、编程实现将单片机内部RAM60H 开始的连续32个单元置为FFH 。
DJNZ R1,LOOP
2、编程实现将内部RAM30H 开始的连续16个数传送到内部RAM50H 开始的连续单元中。
DJNZ R7,LOOP
3、编程实现将单片机外部RAM2000H 为首地址的数据块传送到单片机内部RAM30H 开始的单元中,数据块的长度为32个字节。
MOV DPTR,#2000H
MOV R0,#30H
第1页/共18页
寻找更多 ""51汇编程序练习题1_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
51汇编程序练习题1
&&程序联系
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩1页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢微机原理与应用
《微机原理与应用》网络学堂
《微机原理与应用》习题集
第一章  计算机基础知识
&9820039249H
3F6CH101B&
1[+1011010]&& 2[-1101000]&&&
3[-000111]&&&
4[-1011001]
第二章  MCS-51的硬件结构
8052EA8032EA
8052RAM128
8052RAM128
8052P0~P3I/O
MCS―51系列单片机的指令系统
MOV& 2FH, #40H
MOV& R1, 2FH
MOV& 2FH,&
3-2 RAM4FH
&&&&&&&&&&&&
MOV& A,& #45H
&&&&&&&&&&&&&
MOV& A,& 45H
&&&&&&&&&&&
MOV &45H, 46H
&&&&&&&&&&
MOV& 45H,&
3-4 A=7AH,
(R0)=30H, (30H)=0A5H, (PSW)=80H,
MOV A, #20H
MOV B, #30H
MOV& 30H,&
MOV& A,& #20H
MOV& DPTR,&
MOVX& @DPTR,&
MOV& 30H,&&
MOV& R0,&&
R032HA48HRAM32H80H40H08H
MOV& @R0,&
A=81H,(R0)=20H,(20H)=35H,A
ORL& 20H,&
5ROM1000HRAM
6ROM1000HRAM
3-11已知16位二进制数的高8位和低8位分别存放在20H和21H单元,请编写将其右移一位的程序。
R0R720H27H
3-13166F5DH13B4HRAM30H31H30H8
3-14ALABELA
⑴ A≥10&&&&&&&&&&&&&&
⑵ A>0&&&&&&&&&
⑶ (A)≤10
3-15SP=25HPC=2345H24H=12H25H=34H26H=56HRETSP=PC=
3-16SP=25HPC=2345HLABEL3456HLCALL&
3-17RAM20H50H0AAH&&&
51H01H51H00H
2000H205FH00HRAM&
3-19R3R416R3R4
3-20RAM2000H10RAM&
3-21RAM30H4FHRAM2040H205FH
3-22RAM2000H=X2001H=YZ=3X2YRAM20H
20H2100H2200H 02300H
3-2430H31H162
汇编语言程序设计
思考题与练习题&
4-5RAM20H,1541H61H40H60H
4-6RAM30H31H,32H
7ASCII8031RAM40HASCIIRAM50H0FFH
&4-88031RAM20H50H,RAM20H
&4-98031RAM20H,CC=43H,RAM40H
4-1020HRAM10H30H50H
4-11RAMDATA120HDATA220
4-12RAMDATA150DATA2
4-14RAM1000H1008
4-15BCDX=Y=XRAM
4-166MHz20ms
A0940H79H24H30H19H12H02H78H00H1BH
1≤X≤20R6R7
第五章  MCS-51单片机中断系统
8031INT0INT10
第六章 MCS-51单片机定时器/计数器
6-6T03TR1TH0T1
6-78051fosc6MHzT0P1.050s300s
6-88051fosc12MHzT1P1.0P1.12ms500s
MCS-51单片机串行接口
7-6803111.0592MHz9.6Kb/s1
MCS-51单片机存储器的的扩展
思考题与习题
8-1、简要说明MCS-51系列单片的扩展原理
8-2、为什么当P2口作为扩展总线的地址先后,就不能作为I/O口了?
8-3、使用3-8译码器最多可以扩展多少片6264,试画出其逻辑扩展图,并且写出每一片的地址范围。
8-4、画出8031扩展一片28C16作为程序存储器的逻辑扩展图并写出其地址范围。
8-5、画出综合扩展一片27C64和两片6264的逻辑扩展图并写出它们的地址范围。
MCS-51单片机并行I/O接口的扩展
思考题与习题
9-1、在一个系统中采用同一个地址扩展一片74LS377作为输入口和一片74LS245作为输出口。
9-2、在一个系统中扩展一片8255A,试编制8255A的初始化程序:A口方式0输出,B口方式1输入。
9-3、在一个系统中扩展一片8155,试编制8155的初始化程序:A口为选通输出,B口基本I/O输入。
9-4在一个系统中扩展一片8155,如果TI的输入脉冲为1MHZ,希望从TO输出频率为10KHZ的方波。
输入输出设备及接口技术
10-58155PP40
10-912MHz8032D/ADAC08327FFFH
X50us/Y1V/
10-1012MHz8032A/DADC08097FF8H7FFFH2ms258032RAM50H54H
10-1110281035TLC15430104AD7528A18
AD7528BTLC154301AD7528AB
10-12TTLRS232CTTLRS232CRS485
10-13ICL232MAX489RS232CRS485
Copyright@
盐城工学院机械工程学院 All rights reserved.
学院地址:江苏省盐城市黄海中路20号
电话: 建议您在分辨率下浏览单片机原理及应用习题及答案
1、8051单片机指令系统按功能可分为几类?
2、什么叫寻址方式?具有几种寻址方式?它们的寻址范围如何? 3、堆栈的功能是什么?有什么操作原则?栈顶地址如何指示? 4、什么是汇编?什么是汇编语言?它有什么特点?
5、什么叫指令周期? 6、什么是指令?什么是程序?简述程序在计算机中的执行过程。 7、什么是进位和溢出? 8、“DA
A”指令的作用是什么?怎样使用? 9、片内RAM 20H~2FH单元中的128个位地址与直接地址00H~7FH形式完全相同,如何在指令中区分出位寻址操作和直接寻址操作? 10、8051单片机指令系统中有长跳转LJMP,长调用LCALL指令,为何还没有设置了绝对跳转AJMP,绝对调用ACALL指令?在实际使用是应怎样考虑? 11、SJMP,AJMP和LJMP指令在功能上有何不同? 12、MOVC
A,@DPTR与MOVX
A,@DPTR指令有何不同? 13、在“MOVC
A,@A+DPTR”和“MOVC
A,@A+PC”中,分别使用了DPTR和PC作基址,请问这两个基址代表什么地址?使用中有何不同? 14、设片内RAM中的(40H)=50H,写出执行下列程序段后寄存器A和R0,以及片内RAM中50H和51H单元的内容为何值? 15、堆栈指针(SP)=60H,片内RAM中的(30H)=24H,(31H)=10H。执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化? 16、在8051的片内RAM中,已知(20H)=30H,(30H)=40H,(40H)=50H,(50H)=55H。分析下面各条指令,说明源操作数的寻址方式,分析按顺序执行各条指令后的结果。 MOV
A,40H MOV
P1,#0F0H MOV
@R0,20H 17、完成以下的数据传送过程。 (1)R1的内容传送到R0。 (2)片外RAM 20H单元的内容送R0。 (3)片外RAM 20H单元的内容送片内RAM 20H (4)片外RAM 1000H单元的内容送片内RAM 20H (5)片外RAM 20H单元的内容送R0。 (6)片外RAM 2000H单元的内容送片内RAM 20H (7)片外RAM 20H单元的内容送片外RAM 20H 18、设有两个4位BCD码,分别存放在片内RAM的23H,22H单元和33H,32H单元中,求它们的和,并送入43H,42H单元中去。(以上均为低位字节,高位在高字节)。 19、编程将片内RAM的40H~60H单元中内容送到片外RAM以3000H开始的单元中。 20、已知内部RAM的BLOCK单元开始有一无符号数据块,块长在LEN单元。请编出求数据块中各数累加和并存入SUM单元的程序。 20、编程计算片内RAM区30H~37H的8个单元中数的算术平均值,结果存在3AH单元中。
50H,R0 MOV
A,@R0 MOV
P2,P1 21、把内部RAM中起始地址为DATA的数据串传送到外部RAM以BUFFER为首地址的区域,直到发现“$“字符的ASCⅡ码为止。同时规定数据串的最大长度为32个字节。 22、设内部RAM的20H和21H单元中有两个带符号数,将其中的大数存放在于22H单元中,编出程序。 23、设有100个有符号数,连续存放在片外RAM以2200H为首地址的存储区中,试片成统计其中正数、负数、零的个数。 24、编程将内部数据存储器20H~24H单元压缩的BCD码转换成ASCⅡ存放在于25H开始的单元。 25、试编一查表程序,从首地址为2000H、长度为9FH的数据块中找出第一个ASCII码A,将其地址送到20A0H和20A1H单元中。 26、片内RAM30H开始的单元中有10B的二进制数,请编程求它们之和(和<256 27、用查表法编一子程序,将R3中的BCD码转换成ASCII码。 28、片内RAM40H开始的单元内有10个字节的无符号二进制数,编程找出其中最大值并存于50H单元中. 29、编制一个循环闪烁灯的程序。有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。画出电路图。 30、设计一个4位数码显示电路,并用汇编语言编程使\从右到左显示一遍。 31、编制一个循环闪烁的程序。有8个发光二极管,每次其中某个灯闪烁点亮10次后,转到下一个闪烁10次,循环不止。画出电路图。 32、利用89C51的P1口控制8个发光二极管LED。相邻的4个LED为一组,使2组每隔0.5s 交替发亮一次,周而复始。试编写程序。 第四章 MCS-51单片机定时/计数器及其应用 4-1 选择题1、要测量INT0引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内容应为(
)。 (A)09H
(D)80H 2、使用定时器T1时,有几种工作模式(
) (A)1种
(B)2种 (C)3种
D)4种 3、MCS-51中,若fosc=12MHz,则定时器T1本身的最大定时时间可为(
(A)256μs
(B)8192μs
(C)65536μs
(D)65536×2μs 4、如果以查询方式进行定时应用,则应用程序中的初始内容应包括 (
) (A)系统复位、设置工作方式、设置计数初值
(B)设置计数初值、设置中断方式、启动定时 (C)设置工作方式、设置计数初值、打开中断
(D)设置工作方式、设置计数初值、禁止中断 5、下列定时/计数硬件资源中,不是供用户使用的是 (
(A)定时/计数器高8位TH (B)定时/计数器低8位TL (C)定时器/计数器控制逻辑 (D)用于定时/计数控制的相关寄存器 4-2 填空题1、MCS-51的定时/计数器由两个8位专用的寄存器,即
来控制。 2、MCS-51的定时/计数器有4种工作方式,其中方式
具有自动重装初值功能。定时器T1不能工作在不能工作方式
。 3、若晶振频率fosc=12MHz,则定时/计数器T0工作在计数方式时,在方式0下的最大计数值为
。在方式0下的最大计数值为
。在方式0下的最大计数值为
。 4、若晶振频率fosc=12MHz,要求定时器T1工作于方式1,定时50ms,由软件启动,允许中断。则方式控制字TMOD应为
7 5、在应用定时/计数器时,溢出标志TFx置位后,若用软件处理溢出信息通常有两种方法,即
法。 6、若要允许外部输入INT0的电平控制定时器T0,则门控位GATE=
。且启动控制位TR0=
4-3 问答题与编程题 1、8051单片机内部有几个定时器/计数器?它们是由哪些特殊功能寄存器组成? 2、定时器/计数器的4种工作方式个有何特点?如何选择、设定? 3、使用一个定时器,如何通过软硬结合方法实现较长时间的定时? 4、应用单片机内部定时器T0工作在方式1下,从P1.0输出周期为2ms的方波脉冲信号,已知单片机的晶振频率为6MHZ。 5、若MCS-51单片机的 =6MHz,请利用定时器To定时中断的方法,使P1.0输出占空比为75%的矩形脉冲。 第五章 MCS-51单片机的串行接口 5-1 判断题1、MCS-51的串行接口是全双工的。(
) 2、要进行多机通信,MCS-51串行接口的工作方式应为方式1。
) 3、MCS-51上电复位时,SBUF=00H。
4、用串行口扩并行口时,串行接口工作方式应选为方式1。(
) 5、MCS-51串口多机通信时,可工作在方式2或方式3。
) 6、MCS-51串口多机通信时,允许数据双向传送。
) 7、MCS-51串行通信时,数据的奇偶校验位可有可无,视具体情况而定。 (
) 8、在串行口的四种工作方式种,方式1与方式的波特率是固定值。
) 9、用串行口扩并行口时,RXD脚用于接收数据,TXD脚用于发送数据。 (
) 5-2 选择题1、控制串行口工作方式的寄存器是(
) (A)TCON
(D)TMOD 2、要使MCS-51能够响应定时器串行接口中断,它的中断允许寄存器IE的内容应是(
(D)22H 3、用MCS-51串行接口扩展并行I/O口时,串行接口工作方式应选择(
) (A)方式0
(D)方式3 4、以下有关第9数据位的说明中,错误的是(
) (A)第9位数据位的功能可有用户定义 (B)发送数据的第9位数据位内容在SCON寄存器的TB8位中预先准备好 (C)帧发送时使用指令把TB8位的状态送入发送SBUF中 (D)接收到的第9数据位送SCON寄存器的RB8中保存 5、若晶振频率为fosc,波特率为fosc/12的工作方式是(
) (A)方式0
(D)方式3 6、串行通信的传送速率单位是波特,而波特的单位是 (
) (A)字符/秒
(B)位/秒
(C)帧/秒
(D)帧/分 7、串行工作方式1的波特率是(
) (A)固定的,为时钟频率的十二分之一 (B)固定的,为时钟频率的三十二分之一` (C)固定的,为时钟频率的六十四分之一 (D)可变的,通过定时器/计数器1的溢出率设定 8、帧格式有一个起始位、8个数据位和1个停止位的异步串行通信方式是(
(A)方式0
(B)方式1
(C)方式2
(D)方式3 9、以下有关第9数据位的说明中,错误的是(
) (A)第9数据位的功能可由用户定义 (B)发送数据的第9数据位内容在SCON寄存器的TB8位中预先准备好
(C)帧发送时使用指令把TB8位的状态送入发送SBUF中 (D)接收到的第9数据位送SCON寄存器的RB8中保存 5-3 填空题1、MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器__
加以选择. 2、用串行I/O口扩展并行I/O口时,串行I/O口工作方式应选为方式
。 3、在串行通信中,有数据传送方向
三种方式。 4、MCS-51串行通信工作时,在CPU响应中断后,转入中断入口地址
H单元开始执行中断服务程序。 5、串行口在方式1的接收种设置有数据辨识功能,且只有同时满足条件(1)RI=
。(2)SM2=
或接收到的停止位为1时,所接收到的数据才有效。 6、电源控制寄存器PCON的最高位SMOD=
时,串行口的波特率加倍。 7、若串行口工作在方式1实现点对点通信,则方式字TMOD=
H。 8、在方式
中,SCON寄存器的SM2、TB8、RB8均无意义,通常将其设为0。 9、方式2、3主要用于多机通信,当SM2=1时,这时第9位数据为
的标志位。 5-4 问答题 1、何为并行通信、串行通信?其中串行通信的两种基本形式是什么?请叙述各自原理。何为波特率? 2、在串行通信中的数据传送方向有单工、半双工和全双工之分,请叙述各自功能。 3、简述串行接口接收和发送数据的过程? 4、编一个程序,将累加器中的一个字符从串行接口发送出去。 5、利用8051串行口控制8位发光二极管工作,要求发光二极管每1s交替地亮、灭,画出电路图并编写程序。 6、试编写一串行通讯的数据发送程序,发送片内RAM的20H~2FH单元的16字节数据,串行接口方式设定为方式2,采用偶校验方式。设晶振频率为6MHZ。 7、试编写一串行通讯的数据接收发送程序,将接收到的16字节数据送入片内RAM 30H ~3FH单元中。串行接口设定为方式3,波特率为1200bps,晶振频率为6MHZ。 8、请编制串行通信的数据发送程序,发送片内RAM50H~5FH的16B数据,串行接口设定为方式2,采用偶校验方式。设晶振频率为6MHz。 9、设fosc=11.0592MHz,试编写一段程序,其功能为对串行口初始化,使之工作于方式1,波特率为1200bps;并用查询串行口状态的方法,读出接收缓冲器的数据并回送到发送缓冲器。 10、设计一个串行退通信的数据发送程序,发送内部RAM 50H~5FH中的数据,串行口设定为方式2,采用偶校验方式。设晶振频率为6MHZ。 第六章 MCS-51单片机的系统扩展 1、8155的复位引脚可与89C51的复位引脚直接相连。(
) 2、使用可编程接口必须处始化。
)。 3、MCS-51外部扩展I/O口与外部RAM是统一编址的。
)。 4、8155的复位引脚可与89C51的复位引脚直接相连。
) 5、采用线选法时扩展程序存储器时,程序存储器的地址总是唯一的。(
) 6、8255可编程接口芯片在复位后,PA、PB、PC口均位输出状态。(
) 7、8255可编程接口芯片的PA、PB、PC口均可工作在3种工作方式下。(
9 8、8255可编程接口芯片的PA、PB、PC口均可用作输入。(
) 9、作数据存储器扩展时刻,为了使每个芯片具有独立的地址范围,其片选信号必须能独立控制。(
) 10、扩展程序存储器时,地址锁存器锁存信号G接单片机的WR信号。(
) 11、扩展程序存储器时,MCS-51的P0口与P2口都必须接地址锁存器。(
) 6-2 选择题 1、如在系统中只扩展一片Intel 2732(4k×8),除应使用P0口的8条口线外,至少还应使用P2口的口线 (
(D)7条 2、如在系统中只扩展两片两片Intel 2732(4K×8), 除应使用P0口的8条口线外,至少还应使用P2口的口线 (
(D)8条 3、20根地址线的寻址范围可达 (
) (A)512KB
(B)1024KB
(C)640KB
(D)4096KB 4、下列四条叙述中,有错误的一条是 (
) (A)16根地址线的寻址空间可达1MB (B)内存储器的存储单元是按字节编址的 (C)、CPU 中用于存放地址的寄存器称为地址寄存器) (D)地址总线上传送的只能是地址信息 5、如果把8255A的A1、A0分别与80C51的P0.1、P0.0连接,则8255A的A、B、C、口和控制寄存器的地址可能是(
(A)XX00H ~XX03H
(B)00XXH ~03XXH
(C)0XXXH~ 3XXXH
(D)X00XH ~X03XH 6、下列结论中错误的是 (
) (A)8255A具有三态缓冲器,因此可以直接挂在系统的数据总线上 (B) 在单片机与微型打印机的接口中,打印机的BUSY信号可作为查询信号或中断请求信号使用 (C)8279是一个用于键盘和LED(LCD)显示器的专用接口芯片 (D)由于8155不具有地址锁存功能,因此在与80C51的接口电路中必须加地址锁存器 7、6264芯片是(
) (A)EEPROM (B)RAM(C)FLASH
ROM (D)EPROM 8、使用8255可以扩展出的I/O口线是(
) (A)16根 (B)24根 (C)22根 (D)32根 9、当8031外出扩程序存储器8KB时,需使用EPROM 2716(
) (A)2片 (B)3片 (C)4片
(D)5片 10、某种存储器芯片是8KB*4/片,那么它的地址线根线是(
) (A)11根 (B)12根 (C)13根 (D)14根 6-3 填空题1、32KB RAM存储器的首地址若为2000H,则末地址为
。 2、起止范围为0000H~3FFFH的存储器的容量为
。 3、10根地址线可选
个存储单元,32KB存储单元需要
根地址线。 4、单片机扩展中,为了将P0口的地址和数据分离,在P0口的输出端必须增加一个
。 WR信号用于
存储器的控制。 5、PSEN信号用于
存储器的控制,RD 、6、8255可编程接口芯片工作在方式
时,适合于无条件传送,CPU直接执行输入输出指令。
联系客服:cand57</

我要回帖

更多关于 单片机c语言编程 的文章

 

随机推荐