当前位置: 首页 > wzjs >正文

网站开发培训成都宁波受欢迎全网seo优化

网站开发培训成都,宁波受欢迎全网seo优化,阳江做网站,wordpress移动端悬浮导航学习arm汇编的主要目的是为了编写arm启动代码,启动代码启动以后,引导程序到c语言环境下运行。换句话说启动代码的目的是为了在处理器复位以后搭建c语言最基本的需求。因此启动代码的主要任务有: 初始化异常向量表; 初始化各工作模…

学习arm汇编的主要目的是为了编写arm启动代码,启动代码启动以后,引导程序到c语言环境下运行。换句话说启动代码的目的是为了在处理器复位以后搭建c语言最基本的需求。因此启动代码的主要任务有:

  1. 初始化异常向量表;

  2. 初始化各工作模式的栈指针寄存器;

  3. 开启arm内核中断允许;

  4. 将工作模式设置为user模式;

  5. 完成上述工作后,引导程序进入c语言主函数执行;

因此汇编指令的学习主要是围绕这几个目的展开,主要学习跟上述目的相关的指令。

1.MOV

MOV 目标寄存器, #立即数

MOV 目标寄存器, 第一目标寄存器

ASR
LSL
LSR
ROR
ASR<RS>算数右移
LSL

2.add    add r0, r0 ,#1;r0+1

3.sub    sub r0, r0 ,#1;r0-1(可以加s=>subs  运算结果会影响cpsr寄存器的z位)

  • 汇编指令的s后缀,几乎所有的汇编指令都可以在指令后面加上s后缀,s后缀的含义是在指令执行过程中会更新cpsr寄存器的N,V,C,Z位

N:在结果是有符号的二进制补码情况下,如果结果为负数,则N=1;如果结果为非负数,则N=0

Z:如果结果为0,则Z=1;如果结果为非零,否则Z=0

C:是针对无符号数最高有效位向更高位进位时C=1;减法中运算结果的最高有效位从更高位借位时C=0

V:该位是针对有符号数的操作,会在下面两种情形变为1,两个最高有效位均为0的数相加,得到的结果最高有效位为1;两个最高有效位均为1的数相加,得到的结果最高有效位为0;除了这两种情况以外V位为0

4.bic     bic r0, r0, #(1 << 3)指定位置零

5.orr     orr r0, r0, #(1 << 3)指定位置一

6.mvn  取反

7.b跳转指令

bl 将下一条代码的地址放入LR寄存器

bx将值装回pc寄存器中

8.ldr    ldr sp, =0x40001000  类似于初始化

9.stmfd以满减保存多个计数器(入栈)

stmfd sp!, {r0,r1}(感叹号的目的是加载寄存器)

10.ldmfd以满减取出多个计数器(出栈)

11.mrs 将cpsr的值读入普通寄存器

12msr将普通寄存器的值写入cpsr

二、立即数

#后加一个常量,为立即数。

1.立即数的规则

以上四条指令都有立即数作为第二操作数的情况,那么是什么立即数呢?准确的说这里所指的是12位立即数imm12。先说怎么判断某数是不是12位立即数,12位立即数的条件是:

  1. 如果某个数的数值范围是0~0xFF之间,那么这个数一定是立即数;

  2. 把某个数展开成2进制,这个数的最高位1至最低位1之间的二进制数序列的位数不能超过8位;

  3. 这个数的二进制序列凑够8位之后的的右边必须为偶数个连续的 0(因为右移一次必须是偶数倍)

例如:0x234 = 0000 0000 0000 0000 0000 0010 0011 0100

最高位1至最低位1之间的二进制数序列:1000 1101没有超过8位

末尾1的右边有2个0,所以0x234是立即数

三、栈指针寄存器

栈区不独立,arm9六种模式下都有自己的sp模式,在这里都是满减栈

空增:入栈时栈指针做加法运算,先写数据,后写挪指针,数据放好后,指针指向空栈

空减

满增:

满减:入栈时栈指针做减法运算,先挪指针,后写数据,数据放好后,指针指向满栈

三、在汇编指令中调用c语言函数

http://www.dtcms.com/wzjs/111613.html

相关文章:

  • 织梦网站在css中怎样做导航栏百度识图搜索
  • 合肥市城乡建设局和住建局官网网站seo推广优化
  • 网站建设资讯平台网上教育培训机构
  • 网站 蜘蛛查网址
  • 外贸网站的推广seopc流量排名官网
  • 地方农村电商平台网站设计思路天津站内关键词优化
  • 简述网站开发的三层架构seo怎么做优化计划
  • 湖南哪里有做网站的网站运营
  • 做网站需要的服务器seo关键词优化公司哪家好
  • 南通给公司做网站的东莞网站开发公司
  • 做ppt兼职网站注册百度推广账号
  • 上海的建设网站制作西安专业网络推广平台
  • c 做交易网站想学管理方面的培训班
  • 如何建设网站脱颖而出58同城黄页推广
  • html5做的网站百度推广怎么收费标准案例
  • 以公司做网站自己的品牌怎么做加盟推广
  • 广州地铁北京网站seo优化推广
  • 做日本电商网站海外营销推广服务
  • 淘宝网站的建设目的是什么seo课程总结怎么写
  • 阿里巴巴国际站网站做销售方案东莞网络推广策略
  • 做网站广告推广平台谷歌sem和seo区别
  • 怎么做高端网站外包
  • 推广网站的公司网站推广名词解释
  • 湖南企业网站营销设计软文营销的技巧有哪些?
  • 大连微信网站建设百度自动点击器怎么用
  • 介绍做网站的标题株洲seo优化哪家好
  • 烟台制作网站的公司简介怎么样在百度上推广自己的产品
  • 上海建设网站做网站怎么做
  • wordpress 动态生成页论坛seo教程
  • 南京江北新区包括哪些地方seo百度排名优化