- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机与微机原理第六章
单片机与微机原理第六章2. 80C51单片机有哪几种寻址方式?这几种寻址方式是如何寻址的?7种 立即寻址:在这种寻址方式中,由指令直接给出参与操作的数据。直接寻址:在这种寻址方式中,操作数项给出的是参加运算的操作数的地址。寄存器寻址:由指令指出某一寄存器的内容做为操作数。寄存器间接寻址:在这种寻址方式中,操作数所指定的寄存器中存放的不是操作数本身,而是操作数的地址。变址寻址:这种寻址方式以DPTR或PC为基址寄存器,累加器A为变址寄存器。变址寻址时,把两者的内容相加,所得到的结果作为操作数的地址,这种方式常用于查表操作。相对寻址:通常用于相对转移指令中。位寻址:是指对片内RAM的位寻址区和某些可位寻址的特殊功能寄存器中的任一二进制位进行位操作时的寻址方式。3.要访问特殊功能寄存器和片外数据寄存器,应采用哪些寻址方式?特殊功能寄存器:直接寻址、寄存器寻址和位寻址片外数据寄存器:间接寻址5. 外部数据传送指令有哪几条?试比较下面每一组中两条指令的区别。MOVX A, @DPTR ;((DPTR))→AMOVX @DPTR, A ;(A)→(DPTR)MOVX A, @Ri ;((Ri))→AMOVX @Ri, A ;(A)→(Ri)(1)MOVX A, @R0;MOVX A, @DPTR前者只占用P0口,输出8位地址;后者占用P0、P2口,输出DPTR中的16位地址。(2)MOVX @R0, A;MOVX @DPTR, A写外部存储器指令,寻址范围不同。(3)MOVX A, @R0;MOVX @R0, A前者是读外部指令,后者是写外部指令。6.在80C51系列单片机的片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H,请分析下段程序中各指令的作用,并翻译成相应的机器码,说明源操作数的寻址方式,按顺序执行每条指令后的结果。MOVA,40H;A=48H;直接寻址;E540MOV R0,A;R0=48H;寄存器寻址;F8MOVP1,#0FFH;P1=FFH;立即数寻址;7590F0MOV@R0,30H;(48H)=38H;直接寻址;A630MOVDPTR,#1246H;DPTR=1246H;立即数寻址;901246MOV40H,38H;(40H)=40H;直接寻址;853840MOVR0,30H;R0=38H;直接寻址;A830MOV90H,R0;(90H)=38H;寄存器寻址;8890MOV 48H,#30H;(48H)=30H;立即数寻址;754830MOVA,@R0;A=40H;寄存器间接寻址;E6MOVP2,P1;P2=38H;直接寻址;8590A07.试说明下列指令的作用,执行最后一条指令对PSW有何影响?累加器A的终值为多少?(1)MOV R0,#72H ;R0=72H MOV A,R0 ;A=72H,P=0 ADD A,#4BH ;A=BDH,CY=0,OV=1,AC=0,P=0(2) MOV A,#02H ;A=02H,P=1MOV B,A ;B=02HMOV A,#0AH ;A=0AH,P=0ADD A,B ;A=0CH,CY=0,OV=0,AC=0,P=0MUL AB ;A=18H,B=0,CY=0,OV=0,AC=0,P=0(3)MOV A,#20H ;A=20H,P=1 MOV B,A ;B=20H ADD A,B ;A=40H,CY=0,OV=0,AC=0,P=1 SUBB A,#10H ;A=30H,CY=0,OV=0,AC=0,P=0 DIV AB ;A=01H,B=10H,CY=0,OV=0,AC=0,P=110. 试编程将寄存器R7的内容传送到R1中去。MOVA,R7MOVR1,A12. 试说明下段程序中每条指令的作用,并分析当指令执行完后,R0中的内容是什么?MOVR0,#0A7H;R0=A7H,立即数送寄存器R0XCHA,R0;A=A7H,累加器A中的数据与R0中的数据进行交换SWAPA;A=7AH,累加器A中的高低四位进行交换XCHA,R0;R0=7AH,数据交换回R015.已知:(A)=0C9H,(B)=8DH,CY=1。执行指令 “ADDC A,B”结果如何? A=57H,CY=1,OV=1,AC=1,P=1执行指令 “SUBB A,B”结果如何? A=3BH,CY=0,AC=1,OV=116. 试编程将片外RAM中30H和31
文档评论(0)