欢迎来到010在线作文网!

微机原理试题及答案(2)

试题 时间:2021-08-31 手机版

  三、问答题(每题10分,共20分)

  1、简述什么是堆栈?堆栈中入栈、出栈的过程?(10分)

  堆栈是在内部RAM中按“后进先出”的规则组织的一片存储区。

  入栈操作时,先将SP的内容加1,然后将指令指定的直接地址单元的内容存入SP指向的单元;出栈操作时,先将SP指向的单元内容传送到指令指定的直接地址单元,然后SP的内容减1

  2、列举出80C51单片机的5种寻址方式,写出每一种方式相应的一条指令?(10分)

  第一、寄存器寻址,MOV A,R0

  第二、直接寻址,MOV A,50H

  第三、寄存器间接寻址,MOV A,@R0

  第四、立即寻址,MOV A,#50H

  第五、变址寻址,MOV A,@A+DPTR

  第六、相对寻址,JC 50H

  第七、位寻址,CLR ACC.0

  四、程序阅读题(15分)

  1、 设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,((A))=__E7H______。(5分)

  ORL A,#27H

  ANL A,28H

  XCHD A,@R0

  CPL A

  2、阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能?(10分) MOV R1,#30H; (R1)=___30H_____,

  MOV A,#64H; ((A))=___64H____,

  ADD A,#47H; ((A))=___ABH____,(CY)=____0____,(AC) =____0____,

  DA A ; ((A))=___11H____,(CY)=_____1___,(AC) =___1_____,

  MOV @R1,A; (R1)=____30H___,(30H)=___11H_____。

  五、计算题(10分)

  若要求定时器T0工作方式1,定时时间为1ms,当晶振为6MHz时,求送入TH0和TL0的计数器初值各为多少?

  解:由于晶振为6MHz,所以机器周期Tcy=112=2μs。 -6610

  N=t/Tcy=110-3/210-6=500

  X=216-N=65536-500=65036=FE0CH

  即应将FEH送入TH0中,0CH送入TL0中。

  所以,TH0和TL0的计数器初值各为FEH和0CH。  六、编程题(25分)

  1、若单片机的晶振频率为12MHz,试用循环转移指令编写延时100ms的延时子程序。(10分)

  答:分析:一个机器周期=12个晶振周期=1μs,执行一条DJNZ指令需要2个机器周期,即2μs。采用循环计数法实现延时,循环次数可以通过计算获得,并选择先执行后判断的循环程序。

  汇编程序如下:

  DEL: MOV R7,#400 ;1μs

  DEL1: MOV R6,#123 ;1μs

  NOP ;1μs

  DEL2: DJNZ R6,DEL2 ;2μs,共(2*123)μs

  μs, DJNZ R7,DEL1 ;2μs,共((2*123+2+2)*400+1)即100.01ms

  2、有一变量存放在片内RAM的30H单元,其取值范围为00H~04H。要求编制一段程序,根据变量值求其平方值,并存入片内RAM的31H单元。(15分)

  程序如下:

  ORG 1000H

  START: MOV DPTR,#2000H

  MOV A,30H

  MOVC A,@A+DPTR

  MOV 31H,A

  SJMP $

  ORG 2000H

  TABLE: DB 00,01,04,09,16


本文来源http://www.010zaixian.com/shiti/408444.htm
以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请给我们来信(zaixianzuowenhezi@gmail.com),我们会及时处理和回复,谢谢.