| 
 | 
 
第二章   
一.ARM处理器有什么特点?  
ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。 1、体积小、低功耗、低成本、高性能;  
2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件; 3、大量使用寄存器,指令执行速度更快; 4、大多数数据操作都在寄存器中完成; 5、寻址方式灵活简单,执行效率高; 6、指令长度固定。  
二.ARM的那个寄存器作为PC使用?哪个作为LR使用  
ARM的寄存器,全部共有37个32位长的寄存器。但ARM核心同时最多只可以有18个同时执行的寄存器:包含了16个通用寄存器和2个状态寄存器,16个通用寄存器中包含了3个专用寄存器,R13、R14和R15。 R13 用作堆栈指针 SP R15用做程序计数器PC,  
R14用做子程序链接寄存器LR。  
三.ARM有几种运行模式?那些具有特权?如何改变处理器的模式?  
ARM有7中工作模式:用户模式、快速中断模式、外部中断模式、管理模式、数据访问中止模式、未定义指令中止模式、系统模式。  
除了用户模式以外,其余所有6种模式称之为特权模式,权限比用户模式高,其中特权模式中除去系统模式外的5种模式称之为异常模式,常用于处理中断或异常,以及需要访问受保护的系统资源等情况。  
处理器模式可以通过控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下,这时,应用程序不能访问一些受操作系统保护的系统,应用程序也不能直接进行处理器模式切换。当需要进行处理器模式切换时,应用程序可以产生异常处理,在异常处理中进行处理器模式的切换。  
四.ARM有几种异常?其异常处理方式和x86有什么不同? 1)复位(Reset)异常(管理模式);  
2)未定义指令(undefined instruction)异常(未定义模式); 3)软件中断(SWI)异常(管理模式);  
4)指令预取中止(Prefech Abort)异常(中止模式); 5)数据访问中止(Data Abort)(中止模式); 6)快速中断请求(FIQ)(FIQ模式); 7)外部中断请求(IRQ)(IRQ模式)。  
机制一样:申请中断、相应中断、中断处理、中断返回  
由于硬件不一样,细节上有很大区别,比如ARM的中断向量表: 
 
 |   
 
 
 
 |