资源描述:
《习题第二三章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单片机习题选作教材:第2、3章习题第2、3章 指令系统与汇编程序设计主要内容:寻址方式指令系统伪指令汇编程序:代码转换程序、数据传输程序、循环程序、比较数的大小程序、散转程序、功能模块的初始化程序、中断服务程序。第2、3章 汇编程序习题举例3-2指令可分为哪几类?说明各类功能。答:按功能可分为5类①数据传送指令:数据传送②算术运算指令:加减乘除、加1、减1、二…十进制调整③逻辑运算指令:清零、取反、置位、与、或、异或、位移。④控制转移指令:条件、无条件转移子程序、返回、空操作。⑤位操作指令:传送、逻辑、条件转移2.15
2、下述程序执行后SP=?、A=?、B=?,解释每一条指令的作用,并译成机器码。ORG2000HMOVSP,#40H机器码:75H81H40HMOVA,#30H74H30HLCALL2500H12H25H00HADDA,#10H24H10HMOVB,AF5HF0HHERE:SJMPHEREORG2500HMOVDPTR,#2009HPUSHDPLPUSHDPHRET3-19编写程序段,将外RAM1000H~1030H的数据块,搬迁到内部RAM30H~60H中,并将原数据区清零。解:程序如下,MOVDPTR,#1000HMO
3、VR2,#31HMOVR0,#30HLOOP:MOVXA,@DPTR;读外部RAMMOV@R0,A;写内部RAMMOVA,#00HMOVX@DPTR,A;写外部RAMINCDPTRINCR0DJNZR2,LOOPRET3-24编写程序段,将内部RAM30H~32H和33H~35H中,两个3字节压缩BCD码十进制数相加,将结果以单字节BCD码形式写到外部RAM1000H~1005H单元。解:MOVR2,#03HMOVR0,#32HMOVR1,#35HMOVDPTR,#1000HCLRCLOOP:MOVA,@R0ADDCA
4、,@R1DAAMOVR3,AANLA,#0FHMOVX@DPTR,AINCDPTRMOVA,R3SWAPAANLA,#0FHMOVX@DPTR,AINCDPTRDECR0DECR1DJNZR2,LOOPRET3.10查表题MOVDPTR,#1000HMOVA,30HRLCAPUSHAMOVCA,@A+DPTRMOV40H,AINCDPTRPOPAMOVCA,@A+DPTRMOV41H,AP70-例4三个无符号数:R1,R2,R3.找最大数存于R0,第二做法;入口:三个无符号数:R1,R2,R3;出口:最大数存于R0M1
5、EQU30HBR2:MOVR0,#00H;MOVA,R1;MOVM1,R0;ACALLCOMP;MOVA,R2;MOVM1,R0;ACALLCOMP;MOVA,R3;MOVM1,R0;ACALLCOMP;RETNOPCOMP:CJNEA,M1,$+3;比较A与M1,若A6、A,R2;16进制数→ACJNEA,#10,$+3;分段处理JCAD30H;C=1,有借位,跳转ADDA,#07H;无借位,先加07AD30H:ADDA,#30H;加30HMOVR2,A;转换结果→R2RET第二、三章结束太原工业学院2013年6月