凌阳教育的个人空间 https://blog.eetop.cn/204849 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

其他伪操作完结

已有 241 次阅读| 2016-2-2 16:39

(13)NOFP

使用NOFP伪操作禁止源程序中包含浮点运算指令。

语法格式

NOFP

当系统中没有硬件或软件仿真支持浮点运算指令时,使用NOFP伪操作禁止在源程序中使用浮点运算指令。这时如果源程序中包含浮点运算指令,或者在浮点运算指令的后面使用NOFP伪操作,编译器将会报告错误。

14REQUIRE

REQUIRE伪操作用于指定段之间的相互依赖关系。

语法格式

REQUIRE      label

其中:label为所需要的标号的名称。

使用说明

当进行链接处理包含有“REQUIRE  label”伪操作的源文件时,定义label的源文件也将被包含。

15REQUIRE8PRESERVE8

REQUIRE8伪操作指示当前代码中要求数据栈8字节对齐。

PRESERVE8伪操作表示当前代码中数据栈是8字节对齐的。

语法格式

REQUIRE8

PRESERVE8

使用说明

LDRDSTRD指令要求内存单元地址是8字节对齐的。当在程序中使用这些指令在数据栈中传送数据时,要求该数据栈是8字节对齐的,这时就需要用REQUIRE8伪操作来说明。

链接器要保证要求8字节对齐的数据栈代码只能被数据栈是8字节对齐的代码调用。

16RN

RN伪操作为一个特定的寄存器定义名称。

语法格式

name RN expr

其中:expr为某个寄存器的编码;name为本伪操作给寄存器expr定义的名称。

使用说明

RN伪操作用于给一个寄存器定义名称,以方便记忆该寄存器的功能。

示例44   RN伪操作举例。

COUNT         RN         6                   ;定义寄存器R6COUNT

CHOOSE       RN         9                   ;定义寄存器R9CHOOSE

(17)ROUT

{name}   ROUT

其中:name为所定义的作用范围的名称。

使用说明

当没有使用ROUT伪操作定义局部变量的作用范围时,局部变量的作用范围为其所在的段。ROUT伪操作作用的范围为本ROUT伪操作和下一个ROUT(指同一个段中的ROUT伪操作)伪操作之间。若只要一个ROUT,则局部标号的作用范围在ROUT与段结束伪操作之间。下面的例子说明了ROUT的用法。

示例45   ROUT伪操作举例。

routine          ROUT                          ;定义局部标号的有效范围,名称为routine

                     …

1 routine                                           routine范围内的局部标号1

                     …

                     BEQ       %2 routine     ;若条件成立,则跳转到routine范围内的局部标号2

                     …

                     BEQ       %1 routine     ;若条件成立,则跳转到routine范围内的局部标号1

                     …

2 routine        …                                routine范围内的局部标号2

                     …

otherroutine    ROUT                          ;定义新的局部标号的有效范围

凌阳教育,专注嵌入式人才培养多年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 1

    获赞
  • 3

    评论
  • 3815

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-25 06:15 , Processed in 0.015395 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部