云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 单片机原理及应用课后习题答案

单片机原理及应用课后习题答案

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 8:12:50

思考题与习题4

一、简答题

1.什么是汇编语言源程序、汇编、汇编程序?

(1)使用汇编语言编写的程序称为汇编语言源程序。

(2)汇编语言程序不能直接在计算机上运行,需要将它翻译成机器语言程序,也就是目标代码程序,这个翻译过程称为汇编。 (3)完成汇编任务的程序成为汇编程序。 2.什么叫伪指令,有什么作用?

所谓伪指令是 告诉汇编程序应该如何完成汇编工作,只有在汇编前的源程序中才有伪指令,而在汇编后没有机器代码产生。

伪指令具有控制汇编程序的输入输出、定义数据和符号、条件汇编、分配存储空间等功能。

二、编程题

1. 在外部RAM3000H单元中有一个8位二进制数,试编程将该数的低四位屏蔽掉,并送给外部RAM3001H单元中。 MOV DPTR,#3000H MOVX A,@DPTR ANL A,#0F0H INC DPTR MOVX @DPTR,A 2. 已知fOSC?12MHz,试编写延时20ms和1s的程序

DELAY20MS: MOV R6,#100 ;延时20ms

D1: MOV R7,#98 nop

D2: DJNZ R7,D2

DJNZ R6,D1 RET END DELAY1S: MOV R7,#250 DEL1: MOV R6,#200 DEL2: MOV R5,#98 DEL3: DJNZ R5,DEL3

NOP

DJNZ R6,DEL2 DJNZ R7,DEL1 RET END

3. 用查表的方法求0~6之间的整数的立方。已知整数存在内部RAM30H单元中,查表结果回存30H单元。 MOV DPTR,#tab MOV A,30H

MOVC A,@A+DPTR

MOV 30H,A Ret ORG 1000H

TAB: DB 00H,01H,08H,1BH,40H,7DH,0D8H

4. 若有3个无符号数x、y、z分别在内部存储器40H、41H、42H单元中,试编写一个程序,实现x≥ y时,x+z的结果存放在43H、44H单元中;当x<y时,y+z的结果存放入43H、44H单元中。 MOV A,40H CLR C

SUBB A,41H ;相减比较大小 JC L1

MOV A,40H ;x>=y SJMP L2

L1:MOV A,41H ;x

MOV A,#0 ;保存进位到44H单元 ADDC A,#0 MOV 44H,A

5. 在内部RAM的BLOCK开始的单元中有一无符号数据块,数据块长度存人LEN单元。试编程求其中的最小的数并存入MINI单元。 MOV R2, #11H ;要比较的数据字节数 MOV R1 , #BLOCK;置数据块的首地址 DEC LEN MOV A , @R1

LOOP: MOV MINI,A INC R1 CLR C SUBB A,@R1 ;两个数比较 JC LOOP1 ;C=1,A中的数小,跳转到LOOP1 MOV A,@R1 ;C=1,则把小数送给A SJMP LOOP2

LOOP1: MOV A,MINI

LOOP2: DJNZ R2, LOOP ;比较是否结束 MOV 50H,A ;把大数存入50H单元 RET

6. 在外部RAM3000H起始的单元中存放一组有符号数,字节个数存在内部RAM20H单元中。统计其中大于0、等于0和小于0的数的数目,并把统计结果存放在内部RAM21H、22H和23H单元中。

MOV DPTR,#3000H ;设置首地址 MOV 22H,#0 ;清零

MOV 23H,#0 MOV 24H,#0

L2:MOVX A,@DPTR;取数据

JNZ L1

INC 22H ;为0 SJMP NEXT L1:JB ACC.7,FU

INC 21H ;正数 SJMP NEXT FU:INC 23H ;负数 NEXT:INC DPTR

DJNZ 20H,L2 RET

7. 查找内部RAM20H~40H单元中是否有0FFH这一数据,如果有,将PSW中的F0位置1,没有则将其清零。 MOV R0,#20H MOV R1,#21H CLR F0

NEXT:MOV A,@R0 CJNE A,#0FFH,L1 SETB F0 SJMP L2 L1:INC R0 DJNZ R1,NEXT L2:RET

8. 在片内RAM的30H单元开始,相继存放5个无符号数,请使用冒泡法编写程序,使这组数据按照从小到大顺序排列。

MAIN: MOV R0,#30H ;数据存储区首单元地址 MOV R7.#04H ;各次冒泡比较次数 CLR F0 ;互换标志清“0” LOOP: MOV A,@R0 ;取前数 MOV R2,A ;存前数 INC R0

MOV A,@R0 ;取后数 CLR C

SUBB A,R2 ;比较大小 JNC LOOP1

SETB F0 ;互换,置标志位 MOV A,R2 ;互换数据 XCH A,@R0 DEC R0 XCH A,@R0 INC R0

LOOP1: MOV A,@R0

DJNZ R7,LOOP ;进行下一次比较 JB F0,MAIN ;进行下一轮冒泡 SJMP $ ;排序结束

搜索更多关于: 单片机原理及应用课后习题答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

思考题与习题4 一、简答题 1.什么是汇编语言源程序、汇编、汇编程序? (1)使用汇编语言编写的程序称为汇编语言源程序。 (2)汇编语言程序不能直接在计算机上运行,需要将它翻译成机器语言程序,也就是目标代码程序,这个翻译过程称为汇编。 (3)完成汇编任务的程序成为汇编程序。 2.什么叫伪指令,有什么作用? 所谓伪指令是 告诉汇编程序应该如何完成汇编工作,只有在汇编前的源程序中才有伪指令,而在汇编后没有机器代码产生。 伪指令具有控制汇编程序的输入输出、定义数据和符号、条件汇编、分配存储空间等功能。 二、编程题 1. 在外部RAM3000H单元中有一个8位二进制数,试编程将该数的低四位屏蔽掉,并送给外部RAM3001H单元中。 MOV DPTR,#3000H MOVX A,

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com