Android中的汇编
文章平均质量分 71
行者无疆-超越
这个作者很懒,什么都没留下…
展开
-
AT&T汇编格式介绍
AT&T汇编格式主要用在Unix/Linux系统中,但是国内计算机课主要是以Intel汇编为主,其实这两种汇编只是语法格式不同而已,只要知道了两者的区别,有Intel汇编基础的人能很快的看懂AT&T汇编代码。下面是两种汇编主要的区别:1. 操作数大小AT&T中会在指令结尾用一个字母来表示操作数大小。其中:“b”表示byte;“w”表示word;“l ”表示long。Intel只是在处理内原创 2014-04-30 15:46:10 · 1301 阅读 · 0 评论 -
汇编语言的种类
汇编语言的种类 汇编语言和CPU息息相关,但是不能把汇编语言完全等同于CPU的机器指令。不同架构的CPU指令并不相同,如x86,powerpc,arm各有各的指令系统;甚至同一种架构的CPU有几套指令集,典型的如arm除了有32位的指令集外,还有一套16位的thumb指令集。但是作为开发语言的汇编,本质上是一套语法规则和助记符的集合,它可以包容不同的指令集。如果从CPU体系来划分,常见的汇编有原创 2014-04-30 15:46:06 · 7089 阅读 · 2 评论 -
gcc汇编中的伪操作
学习gcc汇编编程,主要是学习gcc中定义的各种伪操作,下面是常见伪操作的说明:一、 段定义伪操作: 1. 标示段的开始伪操作:.text,.data,.bss说明:这三个伪操作分别表示代码段,数据段,未初始化数据段的开始。 2. 定义段指定段的属性。伪操作:.section格式为:.section name attr例如:.section .data,"a" 3. 设原创 2014-04-30 15:46:08 · 1803 阅读 · 0 评论 -
gcc内嵌汇编介绍
阅读Android或Linux的源码时,有时会遇到使用内嵌汇编的代码。阅读内嵌汇编代码不是一件特别容易的事,如果只了解普通汇编语言,没学习过内嵌汇编,从语言上大概能明白内嵌汇编代码的作用,但是要精确的了解每行代码,每个寄存器的含义就不太可能了。内嵌汇编其实并不复杂,只不过gcc的内嵌汇编必须是AT&T格式,而且有自己一套独特的标记,加上资料很少,有限的资料写的又很晦涩,所以学习起来比较困难。本文争原创 2014-04-30 15:46:12 · 957 阅读 · 0 评论