ARM授课总结内容..docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、二进制 莱布尼茨发明了二进制,并初步判断了二进制可以用于计算。布尔提出了布尔代数,说明了二进制的运算规则,可以用来进行任何计算。 在数字电路这门课程中,可以看到,使用电子器件很容易实现二进制及其运算。 二、对计算机的认识 计算机,实际是一种自动化计算装置,其历史悠久。 现代计算机,是冯.诺依曼在前人经验上提出的。他将计算机划分为五个组成部分:运算器、控制器、存储器、输入设备、输出设备。运算器和控制器组成了CPU。这种组成结构,被称为冯.诺依曼体系结构。其关键为: 程序存放在存储器 控制器起着全局控制管理作用。 从存储器中,取出一条指令,送到运算器中进行处理。周而复始,直到最后一条指令执行完毕。 三、对CPU的认识 CPU内部包括了许多部件,比较重要的有ALU、CU、流水线、缓存、片内总线、ICE、寄存器。这些部件,有些是程序员在工作中所特别关心的(称之为可见的、不透明的)。 对于绝大多数程序员来说,主要关心的是寄存器及其功能作用。对于系统程序员来说,他们还要关心MMU,cache,TCM。 不同体系结构的CPU,寄存器的类型与作用有所不同。 对于ARM CPU来说,寄存器分为:通用寄存器、状态与控制寄存器(程序状态寄存器)、指令指针寄存器(程序计数器)。 ARM CPU共有37个寄存器(32位):31个通用寄存器,6个状态寄存器。 通用寄存器的作用:存放数据。这个数据,分为两种类型:第一种是直接进行算术逻辑运算的数据;第二种,是数据在存储器的位置或地址(在C语言中,又叫做指针)。 状态与控制寄存器(程序状态寄存器)的作用:当CPU进行一次计算后,得到一个结果。这个结果对CPU后续的运行有影响。因此,状态与控制寄存器就必须把影响给记录下来。 指令指针寄存器(程序计数器)的作用:下一条要运行的指令在存储器的位置(地址)。 ARM CPU可以工作在7种工作模式之一:用户、系统、管理、中止、未定义、中断、快中断。管理、中止、未定义、中断、快中断这5种合称为异常模式。除了用户模式以外,其它6种模式合称为特权模式。将CPU的工作模式进行细分,是为了保护系统的安全性,提高系统的性能。 R0~R7、R15,是7个工作模式所共用的。 R8~R12,有2套,快中断使用1套,其它6个工作模式共用1套。 R13~R14,共有6套,用户模式和系统模式共用1套,其它每个工作模式分别使用1套。 CPSR,只有1个,由所有的工作模式所共用。 SPSR,有5个,管理、中止、未定义、中断、快中断这5个工作模式各自有1个。 子程序间通过寄存器R0~R3来传递参数。这时,寄存器R0~R3可记作a0~a3。 在子程序中,使用寄存器R4~R11来保存局部变量。这时,寄存器R4~R11可以记作v1~v8。 寄存器R12用作过程调用中间临时寄存器,记作IP。 寄存器R13用作堆栈指针,记作SP。 寄存器R14称为连接寄存器,记作LR。它用于保存子程序的返回地址。 寄存器R15是程序计数器,记作PC。 四、对存储器的认识 在冯.诺依曼体系结构中,程序和数据是存放在存储器中的。 这个存储器就是我们常说的内存。 在物理上,如果把程序和数据分别放在不同的存储器中,那么得到哈佛结构。 由于计算机只能处理二进制,因此存放在存储器中的程序和数据都是以二进制形式存在的。 在计算机组成原理中,我们知道,存储器与CPU是通过总线连接起来的。而且,存储器本身有很多的组合方式。 不过,对于程序员来说,在绝大多数场合中,我们都认为存储器的基本单位是1个字节(8 bit),或称为一个存储单元。 存储单元可以比做房间,存储单元里面的内容就是房间里面的人。 现在,对于每个存储单元,分别给一个编号(类似于房间号码)。这个编号,我们称之为地址(在语言中,又称为指针)。 编号的范围,不同的CPU有不同的规定。 对于32位ARM CPU,编号范围为0到232-1。这个范围称为地址空间。显然,这个空间是一维的线性空间。 连接存储器与CPU的硬件线路分为:数据总线、地址总线、控制总线。 我们说一个ARM CPU是32位的,那么数据总线共32根。一次可以读取32bit数据,即4个字节。当然,也可以只读取1个字节,2个字节(半字)。 不管是冯.诺依曼体系结构还是哈佛结构,程序和数据的地址都是处于同一个地址空间。 五、对外设的认识 CPU的速度远远大于外设的速度。 外设的种类非常多:按传输的数值类型来划分,可以分为模拟量和数字量;按一次传输数据的数量来划分,可以分为串行和并行;按对总线的占用方式来划分,可以划分为独占式(点对点式)和共享式。 为了保证兼容性、通用性、速度匹配,在CPU和外设之间专门设置一种电路部件,这种电路部件被称为接口电路。简称为接口。 通过接口,实现CPU与外设之间的数据传输,

文档评论(0)

dashewan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档