单片机作业及习题_第1页
单片机作业及习题_第2页
单片机作业及习题_第3页
单片机作业及习题_第4页
单片机作业及习题_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、n2-3 MCS-51单片机引脚EA的作用。nEA访问程序存储器控制信号 当EA=0时,单片机只执行片外程序存储器的程序,起始点从片外ROM的0000H开始。 当EA=1时,单片机先执行片内的ROM,当ROM的地址超过0FFFH(51子系列单片机超过7FFH时),接着执行片外的ROM程序。n2.4 指令周期=1、2、4个机器周期 2微秒n2.6 P1-P3口输出驱动管是单管方式。当输出高电平时,由于输出级的上拉电阻很大,输出的高电平拉负载能力很小,仅为几十微安,并不是完全的双向I/O接口。n2.8 1BHn2.9 字节地址24H的 D3位(表2-3)。n2-7 内部RAM低128单元划分为哪三

2、个主要部分?说明各部分的功能和使用。n工作寄存器区:用于寄存器使用,常用于存放操作数及中间结果;n位寻址区:既可以作为RAM单元使用,进行字节操作,也可对单元的每一位进行操作,用于按位寻址,是MSC-51位处理器的数据存储空间;n通用RAM区:用于一般的RAM数据存储和操作,供用户使用。此外还有堆栈操作区,用于堆栈存储数据。 n2.14系统复位后,SP的内容为07H。 MCS-51是向上生长型,进栈操作:先SP加1,后写入数据,但为了避免与第一工作寄存器冲突,所以不用工作寄存器的区域;n3-10 假设外部数据存储器2000H单元的内容为80H,执行下列命令后,累加器A中的内容为: MOV P2

3、, #20HMOV R0, #00HMOVX A, R0分析: MOVX A, R0指令寻址方式为寄存器间接寻址。R0作为低8位,P2作为高8位。在数据存储器扩展时,P2口作为地址的高8位。3-11 假设累加器A的内容为30H,执行命令: 1000H: MOVC A,A+PC后,把程序存储器单元 的内容送累加器中。分析:本条指令是PC作为基址的编址寻址方式,关键是找到基址和变址的数值。 本条指令的地址是1000H,执行完本条指令后PC加一(单字节指令),即1001H。 变址为(A)=30H,即寻址的程序存储器单元(1001H+30H)的内容。3-12 假设DPTR的内容为8100H,累加器A的

4、内容为40H,执行下列指令: MOVC A,A+DPTR后,送入A的是程序存储器 单元的内容。分析:本条指令是DPTR作为基址的编址寻址方式,关键是找到基址和变址的数值。 基址(DPTR)=8100H,变址(A)=40H,即寻址到程序存储器8100H+40H=8140H内容n设内部RAM中的30H单元的内容为70H,试分析执行下面程序后各有关单元的内容:n MOV 60H,#30Hn MOV R0, #60Hn MOV A, R0n MOV R1, An MOV 40H,R1n(40H)= ; (R1)= 。3-13 假设(SP)=60H,(ACC)=30H,(B)=70H,执行下列命令 PU

5、SH ACC PUSH B后,SP的内容为 ,61H单元的内容为 ,62H单元的内容为 。分析:进栈指令: PUSH direct ;(SP)-(SP)+1,(SP)-(direct)3-14 假设(SP)=62H,(61H)=30H,(62H)=70H,执行下列命令: POP DPH POP DPL后,DPTR的内容为 ,SP的内容为 。分析:出栈指令: POP direct ;(direct)-(SP),(SP)-(SP)-1n执行完指令后,PSW的变化已知(A)=08H,(R4)=7FH ADD A,R4 (A)=87H,CY=0,AC=1,OV=1n3.1 略n3.2 访问SFR采用方

6、式:直接寻址方式和位寻址方式。 访问片外RAM的方式:寄存器间接寻址方式。n3.3 访问片外ROM的方式:变址寻址n3.4 寄存器间接寻址方式n3.5 (A)=08H,(50H)=6FH,(R1)=7FH,(30H)=6FH,(40H)=08Hn3.6 (1)MOV A,R0 (A)=2CH (2)ANL 40H,#0FH (40H)=0CH (3) ADD A,R4 (A)=22H,CY=1,AC=1,OV=0 (4)SWAP A (A)=8EH (5) DEC R1 (20H)=0EH或者(R1)=0EH (6)XCHD A,R1 (A)=0EFH,(20H)=08H第三次作业n3.6,

7、3.9, 3.10, 3.11, 3.12,3.15。n10月26日交。n3.9 试编写程序,将片外RAM的2000H、2001H两个单元的内容分别存入片内RAM的20H单元和寄存器R7中。 MOV DPTR,#2000H MOVX A,DPTR MOV 20H,A INC DPTR MOVX A, DPTR MOV R7,A n3.10 试编写程序,完成两个16位数的减法:FF4DH-CB4EH,结果存入片内RAM的70H和71H单元,71H单元存差的高8位,70H单元存差的低8位。 CLR C MOV A,#4DH SUBB A,#4EH MOV 70H,A MOV A,#0FFH SUB

8、B A,#0CBH MOV 71H,An3.11 试编写程序,将R5中的低4位数与R6中的高位合并成一个8位数,并将其存放回R5中。 第一种方法 第二种方法 MOV A,R5 MOV A,R5 ANL A,#0FH MOV R0,A MOV R5,A MOV A,R6 MOV A,R6 XCHD A,R0 ANL A,#0F0H MOV R5,A ORL A,R5 MOV R5,An3.12 试编写程序,将片内RAM的50H、51H单元的两个无符号数相乘,结果存放在R2、R3中,R2中存放高8位,R3中存放低8位。 MOV A,50H MOV B,51H MUL AB MOV R2,B MOV

9、 R3,An3.15 设被加数存放在片内RAM的20H(低位)、21H(高位)单元,加数存放在22H(低位)、23H(高位)单元,若要求和存放在24H、25H单元(不考虑16位进位),试编写出16位数相加的程序。 MOV A,20H ADD A,22H MOV 24H,A MOV A,21H ADDC A,23H MOV 25H,An第四次作业n3.16、3.17、3.18、3.19n写成子程序的形式(如3.5.4节)n11月9日交n3.16 编写一段程序,把片外RAM中1000H-1030H的内容传送到片内RAM的30H-60H中。 方法一:TRSL: MOV DPTR, #1000H MO

10、V R1, #30H MOV R0, #31HLOOP: MOVX A, DPTR MOV R1, A INC DPTR INC R1 CJNZ R0, LOOP RET 方法二:TRSL: MOV DPTR, #1000H MOV R1, #30H LOOP: MOVX A, DPTR MOV R1, A INC DPTR INC R1 CJNE R1, #61H, LOOP RETn3.17 编写程序,实现两个4位BCD码数加法运算,被加数存放在片内RAM的30H、31H单元,加数存放在32H、33H单元,要求和存放在34H、35H单元,36H存放进位。 (31H)(30H) +(33H)

11、(32H) =(36H)(35H)(34H) PBCD: MOV A, 30H ADD A,32H DA A MOV 34H, A MOV A,31H ADDC A, 33H DA A MOV 35H, A CLR A ADDC A, #00H MOV 36H, A RET CLR A MOV ACC.0, C MOV 36H, A CLR A RLC A MOV 36H, A n3.18 编写程序,把累加器中的二进制数变换成3位BCD码,并将百、十、个位数分别存放在片内RAM的50H、51H、52H。n方法一:/100;/10;注意商和余数n方法二:仿照码型转换程序第二个例子n方法三:减一计

12、数法 TBCD: MOV B, #100 ;#64H DIV AB MOV 50H, A MOV A, #10 ;#0AH XCH A, B DIV AB MOV 51H, A MOV 52H,B RET TBCD: MOV R0,A MOV R1,#00H MOV R2,#00H MOV R3, #08H LOOP: CLR C MOV A,R0 RLC A MOV R0, A MOV A, R1 ADDC A, R1 DA A MOV R1, A MOV A, R2 ADDC A, R2DA AMOV R2, ADJNZ R3, LOOPMOV A, R1ANL A, #0FHMOV 52H, AMOV A, R1ANL A, #0F0HSWAP AMOV 51H, AMOV A, R2ANL A, #0FHMOV 50H, ARET(R0)(R1,R2)n3.19 编写子程序,将R1中的两个十六进制数转换为ASCII码后存放在R3和R4中。TSAN:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论