Only U is in my heart!
I will be right here waiting for you.

C55x C语言基本特性之asm指令

55x C编译器可以直接将C55x汇编语言指令嵌入到编译器的汇编语言输出中,这就是C语言的扩展功能—asm指令。这个语句提供了C不能提供的对硬件的访问功能。这个语句就好像是对叫做asm的函数的调用。asm指令格式如下:

asm (“assembler text”);

编译器直接把命令中的字符串复制到输出文件中。汇编器文档必须包括到两个引用中。所有常用字符串转义符保留原来的定义。例如,可以插入包含引用的string指令:

asm(“STR: .string\“abc\” ”);

插入的代码必须是合法的汇编语言指令。像其它汇编语言指令一样,包含引用的代码行必须用标号、空格、星号、分号开头。编译器不检查字符串。如果有错,汇编器会将其检测出来。

使用asm指令有个问题:它容易破坏C环境,因为C编译器在编译嵌入了汇编语言的C程序时并不检查或分析嵌入的汇编语句。当使用带asm指令的优化器时必须小心。虽然优化器不会移除asm指令,但它可以重新改变周围代码顺序并可能引起不可预知的结果。

赞(0) 打赏
未经允许不得转载:Onlyisu » C55x C语言基本特性之asm指令

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏