单片微机原理与接口技术答案(宋跃版)(4)
INC R0 ;字节数加1
CJNE R0,#00H,LOOP ;连续清256个字节 LOOP1: SJMP LOOP1 END
7、录入并调试一个排序子程序,其功能为用冒泡法将内部RAM中从50H开始的十个单字节无符号正整数,按从小到大的次序重新排列。 程序如下:
用冒泡法进行数据排序 ORG 0000H MOV R3,#50H LOOP0: MOV A,R3
MOV R0,A ;指针送R0 MOV R7,#0AH ;长度送R7
CLR 00H ;标志位为0 MOV A,@R0 LOOP1: INC R0 MOV R2,A CLR C
MOV 22H,@R0
CJNE A,22H,LOOP2 ;相等吗? SETB C
LOOP2: MOV A,R2
JC LOOP3 ;小于或等于不交换 SETB 00H XCH A,@R0 DEC R0 XCH A,@R0
INC R0 ;大于交换位置 LOOP3:MOV A,@R0 DJNZ R7,LOOP1
第 页 共 46 页
16
JB 00H,LOOP0 LOOP: SJMP LOOP END
;一次循环中有交换继续 ;无交换退出
8、设被加数存放在内部RAM的20H、21H单元,加数存放在22H、23H单元,若要求和存放在24H、25H中,试编写出16位数相加的程序。 答: ORG 1000H MOV R1,#21H
MOV R2,#23H
MOV R3,#25H CLR C
LP;MOV A,@R2
ADDC A,@R1 MOV @R3,A DEC R1 DEC R2 DEC R3
DJNE R1,#1FH,LP SJMP $
第 页 共 46 页
17
9、编写一段程序,把外部RAM中1000H~1030H单元的内容传送到内部RAM的30H~60H单元中。
答: ORG 0030H MOV R1,#49 MOV R0,#30H MOV DPTR,#1000H LOOP: MOVX A,@DPTR MOV @R0,A INC DPTR INC R0
DJNZ R1,LOOP SJMP $ END
10、编写程序,实现双字节无符号数加法运算,要求(R1R0)+(R7R6)→(61H60H)。 答:
MOV A,R0 ADD A,R6 MOV 60H,A MOV A,R1 ADDC A,R7 MOV 61H,A SJMP $
11、用R0和R1作数据指针,R0指向第一个加数,并兼作“和”的指针,R1指向另一个加
数,字节存放到R2中作计数初值。 答:
主程序:
JAFA: MOV R0,#20H ;指向加数最低字节 MOV R1,#29H ;指向另一加数最低字节 MOV R2,#04H ;字节数作计数值 ACALL JASUB ;调用加法子程序 AJMP $ RTE
多字节加法子程序:
第 页 共 46 页 18
JASUB: CLR C
JASUB1: MOV A,@R0 ;取出加数的一个字节(4B无符号数加数) ADDC A,@R1 ;加上另一数的一个字节 MOV @R0,A ;保存和数 INC R0 ;指向加数的高位 INC R1 ;指向另一加数的高位 DJNZ R2,JASUB1 ;全部加完了吗? RET
12、在内部RAM的21H单元开始存有一组单字节不带符号数,数据长度为30H,要求找出最大数存入BIG单元。 答:
START: MOV R7,30H DEC R7
MOV R0,#21H
MOV A,@R0
LOOP:INC R0 CLR C
SUBB A,@R0 JNC NEXT MOV A,@R0 NEXT:DJNZ R7,LOOP MOV BIG, A SJMP $ END
13、求双字节补码程序
设双字节数放在内部RAM的30H和31H单元(高字节在低地址),将其取补后存入40H(存放高字节)和41H(存放低字节)单元 答:
START:MOV A,31H CPL A
ADD A,#01H MOV 41H,A MOV A,30H CPL A JNC DONE ADD A,#01H
DONE:MOV 30H,A SJMP $
14、编程统计累加器A中“1”的个数。
第 页 共 46 页
19
答:
MOV R1,#0 PUSH ACC LOOP1:JZ DONE CLR C RLC A JNC LOOP1 INC R1 SJMP LOOP1 DONE:POP ACC SJMP $ END
15、编程序实现1+2+3+??+100=? 答:
汇编代码如下:
H_Byte EQU R4 ;保存结果,高8位L_Byte EQU R5 ;保存结果,低8位Max_Adder EQU 100 ;最大的加数
ORG 0000H LJMP MAIN ORG 0030H
MAIN:
MOV R2,#1 ;加数 MOV R4,#0 MOV R5,#0
START:
MOV A,#Max_Adder CLR CY SUBB A,R2 JC RESULT MOV A,R2 ADD A,L_Byte
MOV L_Byte,A ;保存低位 MOV A,H_Byte ADDC A,#0
MOV H_Byte,A ;保存高位 INC R2 JMP START
RESULT:
SJMP $ ;只用于调试 END
C语言代码如下:
第 页 共 46 页
20
…… 此处隐藏:360字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [法律文档]苏教版七年级语文下册第五单元教学设计
- [法律文档]向市委巡视组进点汇报材料
- [法律文档]绵阳市2018年高三物理上学期第二次月考
- [法律文档]浅析如何解决当代中国“新三座大山”的
- [法律文档]延安北过境线大桥工程防洪评价报告 -
- [法律文档]激活生成元素让数学课堂充满生机
- [法律文档]2014年春学期九年级5月教学质量检测语
- [法律文档]放射科标准及各项计1
- [法律文档]2012年广州化学中考试题和答案(原版)
- [法律文档]地球物理勘查规范
- [法律文档]《12系列建筑标准设计图集》目录
- [法律文档]2018年宁波市专技人员继续教育公需课-
- [法律文档]工会委员会工作职责
- [法律文档]2014新版外研社九年级英语上册课文(完
- [法律文档]《阅微草堂笔记》部分篇目赏析
- [法律文档]尔雅军事理论2018课后答案(南开版)
- [法律文档]储竣-13827 黑娃山沟大开挖穿越说明书
- [法律文档]《产品设计》教学大纲及课程简介
- [法律文档]电动吊篮专项施工方案 - 图文
- [法律文档]实木地板和复合地板的比较
- 探析如何提高电力系统中PLC的可靠性
- 用Excel函数快速实现体能测试成绩统计
- 教师招聘考试重点分析:班主任工作常识
- 高三历史选修一《历史上重大改革回眸》
- 2013年中山市部分职位(工种)人力资源视
- 2015年中国水溶性蛋白市场年度调研报告
- 原地踏步走与立定教学设计
- 何家弘法律英语课件_第十二课
- 海信冰箱经销商大会——齐俊强副总经理
- 犯罪心理学讲座
- 初中英语作文病句和错句修改范例
- 虚拟化群集部署计划及操作流程
- 焊接板式塔顶冷凝器设计
- 浅析语文教学中
- 结构力学——6位移法
- 天正建筑CAD制图技巧
- 中华人民共和国财政部令第57号——注册
- 赢在企业文化展厅设计的起跑线上
- 2013版物理一轮精品复习学案:实验6
- 直隶总督署简介




