RealView编译器常用特有功能(转)

源:RealView编译器常用特有功能

一. 关键字和运算符

1. __align(n):指示编译器在n 字节边界上对齐变量

对于局部变量,n 值可为 1、2、4 或 8。

对于全局变量,n 可以具有最大为 2 的 0x80000000 次幂的任何值。

    __align 关键字紧靠变量名称前面放置。

注意事项:

只能进行过对齐。也就是说,可以将两个字节的对象按 4 个字节对齐,而不能将 4 个字节的对象按两个字节对齐。

用法举例:

    __align(8) char buffer[128];   /* buffer从8字节对齐边界开始*/

    void foo(void)
    {
        ...
        __align(16) int i;         /* 这个对齐值是不允许用在局部变量中的*/
        ...
    }

    __align(16) int i;             /* 作为一个全局变量,这个对齐值是被允许的*/

2. __asm:此关键字用于将信息从编译器传递到 ARM 汇编器armasm。

用法:

a. 嵌入式汇编器

可以使用 __asm 关键字声明或定义嵌入式汇编函数。例如:

        __asm void my_strcpy(const char *src, char *dst);

b. 内联汇编器

可以使用 __asm 关键字将内联汇编合并到函数中。例如:

    int qadd(int i, int j)
    {
        int res;
        __asm
        {
            QADD   res, i, j
        }
        return res;
    }

c. 汇编器标签

可以使用 __asm 关键字为 C 符号指定汇编器标签。例如:

        int count __asm__("count_v1"); // export count_v1, not count

d. 已命名的寄存器变量

可以使用 __asm 关键字声明已命名的寄存器变量。例如:

        register int foo __asm("r0");

3.

4.

5.

....

时间: 2024-10-05 19:11:53

RealView编译器常用特有功能(转)的相关文章

java 16 -3 Vector的特有功能

1 /* 2 * Vector的特有功能: 3 * 1:添加功能 替代 4 * public void addElement(Object obj) -- add() 5 * 2:获取功能 6 * public Object elementAt(int index) -- get() 7 * public Enumeration elements() -- Iterator iterator() 8 * boolean hasMoreElements() hasNext() 9 * Object

java 16 -4 LinkedList的特有功能

了解 LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 public Object getFirst() 得到第一个元素 public Obejct getLast() 得到最后一个元素 C:删除功能 public Object removeFirst() 删除第一个元素 public Object removeLast() 删除最后一个元素 1 import j

Java基础知识强化之集合框架笔记26:LinkedList的特有功能

1. LinkedList的特有功能: (1)添加功能  public  void  addFirst(Object   e)  public  void  addLast(Object   e) (2)获取功能 public  Object  getFirst() public  Obejct  getLast() (3)删除功能 public  Object  removeFirst() public  Object  removeLast() 2. 代码示例: 1 package cn.i

Java基础知识强化之集合框架笔记25:Vector的特有功能

1. Vector的特有功能: (1)添加功能         public void addElement(Object obj)       -- add() (2)获取功能         public Object elementAt(int index)         -- get()         public Enumeration elements()               -- Iterator iterator()                         

iOS 网易彩票-5设置模块三(常用小功能)

该篇文章中,用到很多iOS开发过程中常用的小功能,当前只是将这些功能集成到网易彩票的设置中.iOS-常用小功能介绍,请参考我的另一篇文章: iOS 常用小功能 总结:http://www.cnblogs.com/jys509/p/4805030.html 关于 效果图 思路分析: 使用self.tableView.tableHeaderView 自定义组头部,通过加载xib来实现 评分支持,使用[iOS 常用小功能 总结]中“应用评分”小功能 客户电话,使用[iOS 常用小功能 总结]中“打电话

CITRIX NETSCALER 常用的功能

概述 CITRIX NETSCALER常用的功能有:LB,CS,GSLB,SSL.LB实现的功能是服务器负载均衡,CS实现基于七层(域名,IP等)的负载均衡,GSLB实现的功能是全局负载均衡,SSL实现的功能是SSL加速. 配置步骤 系统配置 配置feature 如图: 进入system菜单,选择setting 点击 basic feature,选中一下feature,如图:选择需要的feature,不用的都关闭 点击advanced feature,选则需要的feature,不用的全部关闭 修

集合框架(List集合的特有功能概述和测试)

package cn.itcast_03; import java.util.ArrayList; import java.util.List; /* * List集合的特有功能: * A:添加功能 * void add(int index,Object element):在指定位置添加元素 * B:获取功能 * Object get(int index):获取指定位置的元素 * C:列表迭代器 * ListIterator listIterator():List集合特有的迭代器 * D:删除功

集合框架(ListIterator的特有功能)

ListIterator接口的成员方法 boolean hasPrevious() E previous() package cn.itcast_04; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.ListIterator; /* * 列表迭代器: * ListIterator listIterator():List集合特有的迭代器 * 该迭代器继承了

List集合的特有功能

import java.util.ArrayList; import java.util.List; /** * * List集合的特有功能 * A:添加功能 * void add(int index,E element):向特定位置添加元素.原来位置元素后移 * IndexOutOfBoundsException:添加时超过了集合当前长度+1 * B:获取功能 * E get(int index):获取指定位置的元素 * int indexOf(Object o):获取指定元素的在集合中第一次