找回密码
 注册
关于网站域名变更的通知
查看: 375|回复: 1
打印 上一主题 下一主题

ARM常见的一些问题记录

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-9-26 13:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
1.说出ARM可以工作的模式名字答:7种:
6 O$ D4 ]7 V- V! r- F& t
  • usr 用户模式
  • system  系统模式
  • FIQ 快速中断模式
  • IRQ 外部中断模式
  • Abort 异常模式
  • undef 未定义模式
  • svc 管理模式* q# l3 ], l7 G' B- d) R
- T5 D7 p: w% N
- m# h. a  q' O; j, `) B
2.ARM核有多少个寄存器
0 r6 x: I6 e) n2 P. q9 _, f! W& l

3 }- p  ^+ x- ^9 [. ]( D5 |答:37个32位的寄存器
0 R6 P$ R; a7 ?, V8 v7 j

1 V7 T, Y. ?* ^9 b; e& W' {3.什么寄存器用于存储PC和LR寄存器  
9 ]# m1 c9 Y' ?# D0 y. o% B1 h
4 m! \: u# \% y, c" y
$ D8 ^7 y. P( {% t$ A7 ^2 S8 l
答:PC:R15。LR:P14
( k; U- ?" u& K& U0 O( t4 \
. B& s! b0 M2 H5 @* M  V* I# F* I4 a
4.R13通常用来存储什么  
( a' g  B- o& g$ M7 x; k
$ H" D0 b# S: V6 D" t! D9 R
9 D9 p4 N* Z5 |- E2 _4 i5 W+ L3 V) j
答:栈指针, F  f: {9 e# U. \1 q
& u7 r# v( E5 J3 ^" c
2 Y3 R- ]% Z3 c# N& s& ?  v

3 o; C* T, ^0 ^1 t; `9 |5 Q2 N5.哪种模式使用的寄存器最少  

% M  }8 I8 r( Z( [( ^$ W$ x! W$ {, _" |+ t
; z0 v/ F0 f6 B. f4 C% G
答:usr' i' H! |5 y1 Q7 B, |
) J- B$ p& e% \( p$ ^: K
- B8 {) y2 M: o, v# b0 G# c

5 x/ f, S0 ~- A; p( A& @6.在Thumb指令中,哪些处理器处于Low group  

6 X1 A) x6 r9 |  [" Y$ L6 l/ U3 ]' p+ W* v3 ^( x

7 d5 U0 T! T3 p2 {. ^答:R0-R7
  Q) }) H9 Y, d! k2 p. A& L
* K, [* x9 u8 x
$ o3 S/ o4 p; W; t

% `8 {* H# b2 U1 U7.CPSR的哪一位反映了处理器的状态  

5 s" E% d9 M$ A& T4 m5 s/ q$ a( S( I$ J9 f4 r
1 t% Y$ t& T9 g1 y+ ]/ G
答:T1 Q  k1 b3 e8 l

  R( `! S1 Q7 K0 B2 Z2 l

0 K% c* w6 T8 ^) F( d: v  Y
' k5 @2 z) t  w/ f8.所有Thumb指令采取什么对齐方式  
+ r# Z" `3 A% p8 L
% g) _5 W6 e+ ^' F: U/ C- N" x; P

. _, g3 N8 b9 l答:16位2字节对齐/ E5 K& n. S9 |) Q, m& |% O' M
5 C; F3 ?- e1 ?0 ?' w$ s

$ H/ b3 u+ h, {+ a" b4 ~  W3 W1 [. f5 [* ^- G% z+ |5 q
9.ARM有哪几个异常类型

( z" g8 h4 L& |3 G8 U
& m; C# B! A! i7 _

: O, t0 m; O; H' p答:7个8 Y& t  I8 N( C5 R2 H2 L0 D
# P/ M& p& T/ g( @# w3 I. y) o+ r1 W

$ Y9 W0 A5 L/ _5 c, u# Q
  • Reset   复位异常   0x00
  • Undefined instruction 未定义异常 0x04
  • Software interrupt 软中断  0x08
  • Prefetch Abort  预取指异常 0x0c
  • Data Abort  数据异常 0x10
  • IRQ   外部中断异常 0x18
  • FIQ   快速中断异常 0x1c- K* X& d' F1 P6 h. n8 R

3 u# x6 y: j- B4 f0 W- [1 o4 `0 Q! t- }5 O  ~; }
& h, }2 n0 z; Z

' A- Q, B6 `2 `# U* R7 Y10.为什么FIQ的服务程序地址要位于0x1c
- [( b8 H7 \- f
' Q* ~) D+ i, G/ Z9 K% P
答:因为0x1c后面可以直接给异常处理函数,而不需跳转,FIQ还有额外的5个私有寄存器,不需对齐进行保护(中断处理时,必须保护期使用的非私有寄存器)从而提高执行速度如果在0x1c前面的话则只有四个字节只能跳转执行异常函数

# d- U8 X0 _  P8 Q! G
& R3 k7 T  H; Y& j& K- X$ i7 ]

2 t+ g+ j+ T, G3 m6 m4 F; g$ i. [+ ?0 e
11.在复位后,ARM处理处于何种模式、何种状态  
# g2 d' a3 `( b

4 C' ~  O( h+ N答:处理ARM状态,svc模式

0 H9 B& w  }6 Z" o1 F/ p
7 T- D3 L, h5 @% i
/ }2 o  P, ]9 R1 }/ F( I
1 G" n8 m8 J' s8 \* |7 {% x  k/ I
12.哪些ARM指令可以有条件的执行  

* [9 n1 e, u& w  l( U( q
: M; y, b; ~# V' }9 B! o答:在ARMv4架构下所有的指令都是可以有条件执行,但是在ARMv5架构下有一条指令BX不能有条件执行,是非条件执行
) k0 ~# Z+ X3 R* X, j5 P

% i& i) c. }9 J

" B: Z; t9 D: H! T- Q+ v" r6 `. w- f0 E, g1 h6 z8 v
13.Thumb代码与ARM代码比较的两在优势

; M1 ]9 q% W8 x+ e: z+ O2 e3 q9 J% z  ^: ~9 R
+ G* z0 i" w9 N9 z' T
答:优化代码密码、提高窄内存操作性能、是ARM指令集的一个功能子集8 B2 O7 e0 Z# [& L* Z6 \

% r2 }4 U( i* n  x3 X& z8 e) j1 t
' S. E- y7 s4 k, P

! {' q% y( p# {) f. j3 K14.AMBA代表是什么  
$ ?* M- I# t& n1 \
% i2 S  y/ O* V" v
* x" Z, s! @! `% `2 r# o* }4 x6 Q' ~
答:advanced mircontrol bus architecture 高级微控制总线体系结构7 Q5 z* [  y% [$ [

$ ?9 R! Q  ~5 i AHB:高速总线。APB:低速总线
$ z" w  Q. t6 r6 c: |
* F# Y8 X- T9 |

) K+ f4 k4 f: A

! C& J; s- ~6 l2 `+ g+ {- b( ~! o; W' I( b* ?

9 E0 E& f1 [1 d4 @4 j' o9 D" ?! E: C' H3 t, |) V

: L3 F5 X* M& b5 B, K- F, L2 M6 F, Z2 n8 L: S1 w
/ k% e4 }7 i+ {0 W

该用户从未签到

2#
发表于 2019-9-26 19:01 | 只看该作者
ARM常见的一些问题记录。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-25 01:25 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表