ARM面试题

1)ARM可以工作的模式名字 ARM有7个基本工作模式: 
     用户模式(user)、
     快速中断模式(FIQ)、
     外部中断模式(IRQ)、
     特权模式(SVC)、
     数据访问中止模式(abort)、
     未定义指令中止模式(undef)、

     系统模式(system) 

2) ARM核有多少个寄存器?

      ARM有37个32位长的寄存器。
 
3) 什么寄存器用于存储PC和LR寄存器? 
       R15(PC)、R14(LR) 

4) R13通常用来存储什么? 
       SP(栈指向) 

5) 哪种模式使用的寄存器最少? 
      用户模式/系统模式(不用SPSR)
 
6) 在Thumb指令集中,哪些寄存器处于low group?
      R0-R7属于低位寄存器。
 
7) CPSR的哪一个位反映了处理器的状态? 
     第5位(从0开始),T状态位。  
1表示运行在Thumb状态,0表示运行在ARM状态。

8) 所有的Thumb指令采取什么对齐方式? 
     半字对齐(2个字节)
 

9) ARM有哪几个异常类型? 7种异常类型。  

   1. 复位异常 

    2. 未定义指令异常 
    3. 软件中断  
    4. 指令预取中止  
    5. 数据中止异常  
    6. IRQ(外部中断请求)  
    7. FIQ(快速中断请求)
 
10) 为什么FIQ的服务程序地址要位于0X1C? 

尽可能快,省去跳转指令(FIQ的向量地址是异常中断向量表的最高地址,而异常
中断向量表后跟的是程序代码,FIQ的中断服务程序紧接中断向量表存放,中断过程
可以节省一条跳转指令)
 
一,FIQ向量位于异常向量表的末尾,不需要跳转指令,异常处理程序可以从异常向量处连续执行;

 二,中断处理需要保护其使用的非私有寄存器,而FIQ有5个额外的私有寄存器;




11) 在复位后,ARM处理器处于何种模式、何种状态? 

    特权模式(SVC)、ARM状态 



你可能感兴趣的:(ARM面试题)