您的位置 首页 模拟

S3C2440学习二(根底资源的运用)

虽然有种流水账的感觉,但是这是学习的必经之路,等我渗透ARM三次后,我再全面处理问题,给出最简洁最直接的答案吧。①ARM有多少个通用寄存…

尽管有种流水账的感觉,可是这是学习的必经之路,等我浸透ARM三次后,我再全面处理问题,给出最简练最直接的答案吧。
①ARM有多少个通用寄存器,有什么用?(让咱们一个一个记载)

通用寄存器

通用寄存器可用于传送和暂存数据,也可参加算术逻辑运算,并保存运算成果。除此之外,它们还各自具有一些特别功用。通用寄存器的长度取决于机器字长,汇编语言程序员有必要了解每个寄存器的一般用处和特别用处,只要这样,才能在程序中做到正确、合理地运用它们。
  16位cpu通用寄存器共有 8 个:AX,BX,CX,DX,BP,SP,SI,DI.
  八个寄存器都能够作为一般的数据寄存器运用。
  但有的有特其他用处:AX为累加器,CX为计数器,BX,BP为基址寄存器,SI,DI为变址寄存器,BP还可所以基指针,SP为仓库指针。
  32位cpu通用寄存器共有 8 个: EAX,EBX,ECX,EDX,EBP,ESP,ESI,EDI功用和上面差不多

ARM通用寄存器
通用寄存器(R0-R15)可分为三类:不分组寄存器R0~R7;分组寄存器R8~R14;程序计数器PC。
1)不分组寄存器R0~R7
不分组寄存器R0~R7在全部处理器形式下,它们每一个都拜访相同的32位寄存器。它们是真实的通用寄存器,没有体系结构所隐含的特别用处。
2)分组寄存器R8~R14
分组寄存器R8~R14对应的物理寄存器取决于当时的处理器形式。若要拜访特定的物理寄存器而不依赖当时的处理器形式,则要运用规则的姓名。寄存器R8~R12各有两组物理寄存器:一组为FIQ形式,另一组为除了FIQ以外的全部形式。寄存器R8~R12没有任何指定的特别用处,只是在作快速中止处理时运用。寄存器R13,R14各对应6个分组的物理寄存器,1个用于用户形式和体系形式,其它5个别离用于5种反常形式。寄存器R13一般用做仓库指针,称为SP;寄存器R14用作子程序链接寄存器,也称为LR。
3)程序计数器PC
寄存器R15用做程序计数器(PC)。
②大约有多少资源模块?
ARM处理器共有37个寄存器:1) 31个通用寄存器,包含程序计数器(PC)。这些寄存器都是32位的;2)6个状况寄存器。这些寄存器也是32位的,可是只运用了其间的12位。
S3C2440的片内资源大约可分13类:一,1个LCD控制器(支撑STN和TFT带有触摸屏的液晶显示器);二,SDRAM控制器;三,3个通道的UART;四,4个通道的DMA;五,4个具有PWM功用的计时器和1个内部时钟;六,触摸屏接口;七,I2C总线接口;八,2个USB主机接口,1个USB设备接口;九,2个SPI接口;十,SD接口和MMC卡接口;十一,看门狗计数器;十二,117位通用I/O口和24位外部中止源;十三,8通道10位AD控制器。
ARM9主要是一ARM920T为中心,进行上述外围的扩张,使其显示出强壮的才能,主要是频率上去了,能做的工作就多了,要点ARM920T的内核安稳。
③关于ARM的寻址是指的RAM吗?对ROM怎么寻址?
我了解的寻址是,CPU每部寄存器对当即数的处理,对内部寄存器的处理,假如需求运算的就把中心成果或状况放到RAM中,相当于打草稿,假如是需求运用数据就进入ROM调用,相当于ROM是资料库,假如运算的成果重要就存放到RAM中相当于存档。
其实寻址十分简略,RAM和ROM或FLASH都是对应不同的设备,有不同的驱动方法,还有便是有地址次序,选用常用的指令,写入读出到相应的地址,全部就水到渠成了。
④有时候用ADS1.2编译程序会犯错,可是将编译清楚后,从头编译后,可能会报警,但不会犯错,这是预编译和衔接中的问题吗?
据说是编译中有个*.O文件,可执行代码的生计,是编译后衔接,大约编译后生成*.O文件,然后衔接处理行不通了,前面编译大约是对每个文件每个文件的处理,得到许多中心文件,然后再体系性衔接处理,说以从头再来过能够处理这个编译问题。
⑤程序中static的着用?
加static 是标明此函数为静态函数,即此函数只能在本文件中运用,不允许其他文件调用此函数.函数后边的const 关键字表明,这个函数的返回值是个常量类型。这个常量类型是有约束的。 他的生计期间便是在这个类中。
⑥咱们知道终究鄙人载到硬件的是二进制代码,那么指令、数据、地址的差异和联络是什么?
对应硬件来说,每一行代码都是都有个存储次序,可了解为按汇编的格局先装入操作指令,再是地址或寄存器,再是数据。尽管指令、数据、地址编译到最后便是二进制代码,可是他们有次序,并且依照对应的指令就能主动分离了。再深化研究芯片的规划就能深化把握了。
⑦RAM,ROM和flash的差异?
能够把他们看做不同的芯片、不同的设备,都能经过IO读写数据,他们都有各自的地址空间,可是RAM规划之初便是要求速度快,不必永久保存,而ROM要求永久保存(精确的是保存有用的时刻,一般百十年就废了),flash又称为闪存,和ROM一个性质,主要是价格问题,做嵌入式不必想PC机要那么大,能够做小一点价格便宜。
⑧FIQ和IRQ的差异?
在ARM中,FIQ形式是特权形式中的一种,一起也归于反常形式一类。用于高速数据传输或通道处理,在触发快速中止请求(FIQ)时进入。
  FIQ和IRQ(外部中止形式)之间有很大的差异。FIQ形式有必要赶快处理,处理完毕后脱离这个形式;IRQ形式能够被FIQ形式中止,但IRQ不能中止FIQ形式;为使FIQ形式呼应更快,FIQ形式具有更多的影子(Shadow)寄存器。FIQ形式有必要禁用中止;假如一个中止例程有必要从头启用中止,应运用IRQ形式而不是FIQ形式。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/275105.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部