更多课程 选择中心

嵌入式培训
达内IT学院

400-996-5531

嵌入式面试题之中断与异常有何区别?

  • 发布:嵌入式培训
  • 来源:企业面试题
  • 时间:2017-08-10 11:33

题一:

中断与异常有何区别?

题二:

当一个异常出现以后,ARM微处理器会执行哪几步操作?

题三:

ARM协处理器指令包括哪3类,请描述它们的功能。

题一答案:

异常在处理的时候必须考虑与处理器的时钟同步,实际上异常也称为同步中断,在处理器执行到因编译错误而导致的错误指令时,或者在执行期间出现特殊错误,必须靠内核处理的时候,处理器就会产生一个异常;所谓中断是指外部硬件产生的一个电信号从CPU的中断引脚进入,打断CPU的运行。所谓异常是指软件运行过程中发生了一些必须作出处理的事件,CPU自动产生一个陷入来打断CPU的运行。

题二答案:

当一个异常出现以后,ARM微处理器会执行以下几步操作。

A、将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行。若异常是从ARM状态进入,则LR寄存器中保存的是下一条指令的地址(当前PC+4或PC+8,与异常的类型有关);若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量,这样,异常处理程序就不需要确定异常是从何种状态进入的。例如:在软件中断异常SWI,指令MOVPC,R14_svc总是返回到下一条指令,不管SWI是在ARM状态执行,还是在Thumb状态执行。

B、将CPSR复制到相应的SPSR中。

C、根据异常类型,强制设置CPSR的运行模式位。

D、强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处。

题三答案:

ARM协处理器指令包括以下3类:

用于ARM处理器初始化ARM协处理器的数据处理操作。

用于ARM处理器的寄存器和ARM协处理器的寄存器间的数据传送操作。

用于在ARM协处理器的寄存器和内存单元之间传送数据。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:浅谈我的一些嵌入式面试经历
下一篇:嵌入式面试题之什么是预编译?

周一快练:嵌入式C基础题三道

嵌入式面试题三道 考一考

嵌入式开发面试题--什么是GPIO?

这嵌入式知识三个问题你都知道吗?

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省