- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机习题00
3-2传送类指令:
4、将外部ram2000h单元内容和内部ram20h单元内容互相交换
MOV DPTR,#2000H;MOVX A,@DPTR;XCH A,20H; MOVX @DPTR,A
5、编程将片内50h单元存放的1~9的数转换成相应的ASC2码。
(1)MOV A , #30H;XCHD A , 50H;OV 50H , A
(2) MOV A,50H;ADD A,#30H ;MOV 50H , A
4-1伪指令
例:查找内部ram20h-50h单元中出现00h的次数,结果保存在r1中。
mov r0,#20h;mov r2,#31h;mov r1,#0h;bb:mov a,@r0;cjne a,#0,aa;inc r1;aa:inc r0
djnz r2,bb;mov a,r1;sjmp $ CJNE A,#0,feiling ;MOV 20H,#0FFH;sjmp $
feiling: jnc zheng;MOV 20H,#0FFH;SJMP JS;ZHENG: MOV 20H,#0
JS: SJMP $
(1)已知(R0)=20H, (20H ) =10H, (P0) =30H, (R2) =20H, 执行如下程序段后,( 40H ) =____。
MOV @R0 , #11H ;(20h)=11h
MOV A , R2 ;(a)=20h
ADDC A , 20H ;(a)=31h
MOV PSW , #80H ;cy=1
SUBB A , P0 ;(a)-30h-1=0
XRL A , #45H ;(a)=45h
MOV 40H , A ;(40h)=45h
4-2分支程序
例1、编写程序把A中的二进制数转换为3为BCD码,百位十位和各位分别存入30H开始的3个存放单元。(流程图)
如(A)=167
则程序执行后:
(30H)=1, (31H)=6, (32H)=7.
167如何分离出1、6、7三个数字?
MOV B,#100;DIV AB;MOV 30H,A;MOV A,B;MOV B,#10H;DIV AB
MOV 31H,A;MOV 32H,B
例2、编程实现将A中两位压缩BCD码转换为ASC2码存入30h和31H单元。
org 0000;mov r0,#30h;mov b,a;start:anl a,#0fh;ADD A,#30H;MOV @R0,A;MOV A,B
ANL A,#0F0H;SWAP A;ADD A,#30H;INC R0;MOV @R0,A;SJMP $;end
2`、编程实现将A中一位16进制数转换为ASC2码存入30h单元。
org 0000;mov b,a;start:anl a,#0fh;mov r1,a;clr c;subb a,#0ah;jc aa
mov a,r1;add a,#37h;mov 30H,a;sjmp $;aa:mov a,r1;add a,#30h
mov 30H,a;sjmp $;end
例3:求双字节数的补码:该数存放于内部RAM 20H和21H两个单元,高地址存放高字节。要求读出补码后存于30H和31H单元。(流程图)先讲解单字节?
思路:先对低字节求补(即取反加1),判定其结果是否为0,若是(即低字节取反加1后有产生进位),则高字节取补(取反加1),否则,高字节取反,不加1。
ORG 0000;MOV A,21H;JB ACC.7,START;MOV 30H,20H
MOV 31H,21H;AJMP JIESU
START:MOV A,20h;CPL A;Add A,#01
MOV 30h,A;低八位取反加1,A中存放
MOV A,21h ;表示要加进位的情况;CPL A;addc A,#00h
BB:SETB ACC.7;MOV 31h,A;JIESU:sjmp $; END
例5:设变量X存放于R2中,函数值Y存放于R3中。试按下式要求给Y赋值。
方法1:
ORG 0100H
MOV A,R2 ;X→A
CJNE A,#00H,L1 ;(A)与0比较,不等则转移
MOV R3,#00H ;若相等,0→R3
SJMP L3
L1:JB ACC.7,L2 ;X<0,则转移
MOV R3,#01H ;X>0,1→R3
SJMP L3
L2:MOV R3,#0FFH ;X<0,?
您可能关注的文档
最近下载
- 2022-2023学年二年级语文上册期末乐考 非纸笔测试题(四) 部编版(含答案).docx VIP
- 2025年秋期人教版六年级上册数学全册核心素养教案(教学反思有内容+二次备课版).pdf
- 23DX001建筑电气工程设计常用图形和文字符号- 2.1.5 下.pdf VIP
- 2022-2023学年二年级语文上册期末乐考 非纸笔测试题(一) 部编版.docx VIP
- 七年级上册地理知识点.doc VIP
- 22K505医院洁净用房通风空调设计与安装.docx VIP
- 嵌入式软件工程师招聘条件.pdf VIP
- 高级英语(第四版)1_教学课件Lesson 11 Speech on Hitler’s Invasion of the U.S.S.R..ppt VIP
- 《大学生就业指导》PPT课件ppt.pptx VIP
- 2022-2023学年二年级语文上册期末乐考+非纸笔测试题(二)+部编版.docx VIP
原创力文档


文档评论(0)