EDA365电子论坛网
标题:
ARM数据和指令类型
[打印本页]
作者:
thinkfunny
时间:
2021-6-2 09:46
标题:
ARM数据和指令类型
ARM 采用的是 32 位 架构,这表明地址空间是2的32次方,4G。
+ C( ?2 j( |9 {# d9 f' R
ARM 约定:
- A+ x C- l" o2 _6 ]1 q# \; K0 q
Byte:8 bits
% _% K7 M) g z# ?5 o, N
Halfword: 16 bits (2 byte)
& c; J+ U+ `( M" R3 j9 n: o- M& X1 B( c
Word :32 bits (4 byte)
2 G$ @" d6 Z7 S+ s
Doubleword:64-bits(8byte)(Cortex-A处理器)
! H/ u% R! q% G5 H s
大部分ARM core 提供:
- m2 D ^( W7 C! T$ y, p0 M
ARM 指令集(32-bit)
& n" f* I3 Y5 W( f7 r7 f: q
Thumb指令集(16-bit )
, z; }# y$ y2 b' x: @. Z. Y0 x! N* e
Cortex-A处理器
. T6 c8 _$ c/ `$ g! l
16位和32位Thumb-2指令集
) Z/ F: b" W- {, G( j0 {# t
16位和32位ThumbEE指令集
4 z. r( y: A/ s4 H" @2 R7 X
2 @3 W0 X' f9 A! p) N6 {7 e( U1 M
指令集的16位和32位差异体现在那里?简单来说就是32位指令集能够操作32位数,而16位指令集只能操作16位数。一个简单的例子,同样执行0X111111111和0X22222222的加法,32位指令集可以一次执行完毕,而16位指令集只能
( T5 u8 o% p6 p- y3 R, m; ^
高16位和低16位拆开运算。就向小时候我们学习加法,一开始我们只会个位数加法(十进制1位加法),后来我们会100以内的加法(十进制2位加法)。
9 x4 R$ I. e4 }2 m) w
在CORETEX-A中我们都用32位ARM指令集
) N1 g: S& v% b
( a$ f2 D p$ M+ a) B% F8 x8 V
5 H. r4 W9 F8 a6 L
* u/ d( o* p/ `4 \7 c1 U
作者:
SsaaM7
时间:
2021-6-2 11:02
ARM数据和指令类型
作者:
ExxNEN
时间:
2021-6-2 11:08
ARM数据和指令类型
作者:
uiabluqp
时间:
2021-6-2 11:08
ARM数据和指令类型
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2