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

创建一个网站要钱吗网站运营策划书范文

创建一个网站要钱吗,网站运营策划书范文,什么网站可以做问卷,网上定做衣服的网站学习 Linux 系统启动流程,必须熟悉几个汇编指令,总结给大家。 这里不是最全的,只列出一些最常用的汇编指令。 一.数据处理指令 1.数据传送指令 【MOV指令】 把一个寄存器的值(立即数)赋给另一个寄存器,或者将一个…

学习 Linux 系统启动流程,必须熟悉几个汇编指令,总结给大家。

这里不是最全的,只列出一些最常用的汇编指令。

一.数据处理指令

1.数据传送指令

【MOV指令】

把一个寄存器的值(立即数)赋给另一个寄存器,或者将一个常量赋给寄存器。

MOV指令的格式为:

MOV 目的寄存器,源操作数MOV R1,R0   ;将寄存器R0的值传送到寄存器R1

2.算术运算指令

(1)【加法指令】:ADD

ADD 目的寄存器,操作数1,操作数2

ADD指令用于把两个操作数相加,并将结果存放到目的寄存器中。

ADD  R0,R1,R2   ;R0 = R1 + R2
ADD  R0,R1,#256   ;R0 = R1 + 256

(2)【带进位的加法指令】:ADC

ADC 目的寄存器,操作数1,操作数2

ADC指令用于把两个操作数相加,再加上CPSR中的C条件标志位的值,并将结果存放到目的寄存器中。

(3)【减法指令】:SUB

SUB 目的寄存器,操作数1,操作数2

把操作数1减去操作数2,并将结果存放到目的寄存器中。

SUB  R0,R1,R2  ;R0 = R1 - R2
SUB  R0,R1,#256  ;R0 = R1 - 256

3.比较指令

(1)【直接比较指令】:CMP

CMP  操作数1,操作数2CMP R1,R0;将寄存器R1的值与寄存器R0的值相减,并根据结果设置CPSR的标志位
CMP R1,#100;将寄存器R1的值与立即数100相减,并根据结果设置CPSR的标志位

4.逻辑运算指令

(1)【逻辑与指令】:AND

AND  目的寄存器,操作数1,操作数2

AND 指令用于在两个操作数上进行逻辑与运算,并把结果放置到目的寄存器中。

AND  R0,R0,#3 ; 该指令保持R0的0、1位,其余位清零。

(2)【逻辑或指令】:ORR

ORR 目的寄存器,操作数1,操作数2

ORR 指令用于在两个操作数上进行逻辑或运算,并把结果放置到目的寄存器中。

ORR  R0,R0,#3 ; 该指令设置R0的0、1位,其余位保持不变。

二.转移指令

【跳转指令】

B   跳转指令
BL  带返回的跳转指令
BLX 带返回和状态切换的跳转指令
BX  带状态切换的跳转指令

三.程序状态寄存器访问指令

1、【MRS指令】

MRS 通用寄存器,程序状态寄存器(CPSR或SPSR)MRS R0,CPSR   ;传送CPSR的内容到R0
MRS R0,SPSR   ;传送SPSR的内容到R0

2、【MSR指令】

MSR 程序状态寄存器(CPSR或SPSR)_<域>,操作数MSR CPSR,R0   ;传送R0的内容到CPSR
MSR SPSR,R0   ;传送R0的内容到SPSR

 资料直通车:Linux内核源码技术学习路线+视频教程内核源码

学习直通车:Linuxc/c++高级开发【直播公开课】

零声白金VIP体验卡:零声白金VIP体验卡(含基础架构/高性能存储/golang/QT/音视频/Linux内核)

四.加载/存储指令

ARM 微处理器支持加载/存储指令用于在寄存器和存储器之间传送数据,加载指令用于将存储器中的数据传送到寄存器,存储指令则完成相反的操作。

1、【LDR指令】

LDR 目的寄存器,<存储器地址>

LDR指令用于从存储器中将一个32位的字数据传送到目的寄存器中。

LDR  R0,[R1]  ;将存储器地址为R1的字数据读入寄存器R0。
LDR  R0,[R1,R2]  ;将存储器地址为R1+R2的字数据读入寄存器R0。
LDR  R0,[R1,#8]  ;将存储器地址为R1+8的字数据读入寄存器R0。
LDR  R0,[R1,R2] ! ;将存储器地址为R1+R2的字数据读入寄存器R0,并将新地址R1+R2写入R1。
LDR  R0,[R1,#8] ! ;将存储器地址为R1+8的字数据读入寄存器R0,并将新地址R1+8写入R1。

LDRB 和 LDRH 指令大家可以百度。

2、【STR指令】

STR 源寄存器,<存储器地址>

STR指令用于从源寄存器中将一个32位的字数据传送到存储器中。该指令在程序设计中比较常用,且寻址方式灵活多样,使用方式可参考指令LDR。

STR R0,[R1],#8 ;将R0中的字数据写入以R1为地址的存储器中,并将新地址R1+8写入R1。
STR R0,[R1,#8] ;将R0中的字数据写入以R1+8为地址的存储器中。

STRB 和 STRH指令大家可以百度。

五.异常产生指令

1、【SWI指令】

SWI 24位的立即数

SWI指令用于产生软件中断,以便用户程序能调用操作系统的系统例程。

SWI  0x02 ;该指令调用操作系统编号位02的系统例程。

2、【BKPT指令】

BKPT   16位的立即数

BKPT指令产生软件断点中断,可用于程序的调试。

六.伪代码

1.【AREA】

一个汇编程序至少要包含一个段,当程序太长时,也可以将程序分为多个代码段和数据段,因此在汇编程序的开头,我们一般的语句会用到AREA。

AREA 段名 属性 1 ,属性 2 ,....  AREA Init ,CODE ,READONLY ;定义一个代码段,段名为 Init ,属性为只读。 

2、【ALIGN】

ALIGN { 表达式 { ,偏移量 }}    

ALIGN 伪指令可通过添加填充字节的方式,使当前位置满足一定的对其方式。其中,表达式的值用于指定对齐方式,可能的取值为2的幂,如 1 、2 、4 、8 、16 等。eg : xxx = ALIGN(4)

3、【CODE16、CODE32】

CODE16 (或 CODE32 )

CODE16 伪指令通知编译器,其后的指令序列为 16 位的 Thumb 指令。

CODE32 伪指令通知编译器,其后的指令序列为 32 位的 ARM 指令。

4、【ENTRY】

ENTRY  ENTRY(stext)  

很常见!!!ENTRY 伪指令用于指定汇编程序的入口点。在一个完整的汇编程序中至少要有一个 ENTRY (也可以有多个,当有多个 ENTRY 时,程序的真正入口点由链接器指定),但在一个源文件里最多只能有一个 ENTRY (可以没有)。

5、【END】

END      

END 伪指令用于通知编译器已经到了源程序的结尾。

原文作者:一起学嵌入式

http://www.hkea.cn/news/434421/

相关文章:

  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校
  • 南沙区交通和建设局网站中国十大网络销售公司
  • 免费建设网站的方法百度网址大全 官网
  • 手机网站设计制作公司微信推广费用一般多少
  • 建设网站需要什么注册域名费用一般多少钱
  • 女性门户网站源码百度指数功能有哪些
  • 怎么帮公司做网站建设谷歌搜索引擎免费入口 香港
  • 请写出网站建设前期需要做的准备外贸定制网站建设电话
  • 南京门户网站建设网络营销优秀案例
  • 2012服务器如何做网站周口网络推广哪家好
  • 贵阳搜索玩的网站网络舆情软件免费入口
  • 前端自己写代码建网站要花多少钱游戏推广在哪里接活
  • 网站建设中+网页代码nba最新排名东西部
  • 东莞企业建设网站官网有限公司百度推广深圳分公司
  • 海外推广工作内容搜索引擎优化seo是什么
  • wordpress 发短信西安网络优化大的公司