zoukankan      html  css  js  c++  java
  • Part10-C语言环境初始化-C与汇编混合编程lesson4

    1、为什么要混合编程

    汇编语言:执行效率高;编写繁琐;

    执行效率高;能够更直接地控制处理器。

    c语言:可读性强,移植性好,调试方便。

    1、汇编调用c函数

    2、c调用汇编函数

    汇编语言定义的函数(标号),需要把它定义为全局的。

    在start.s中修改

    在main.c中修改

    3、c内嵌汇编

    1、格式

    输出部分:在使用汇编语句过程中,可能会把c语言中的变量的值修改了,就把这些变量放在这个部分。

    输入部分:是在使用汇编时,从c语言中拿到一些参数来使用。

    破坏描述部分:就是修改了某些寄存器的值,然后把对应寄存器放在这里

    2、范例

    这里的%0表示0号参数,汇编语句的作用是把%0处的参数写入c1寄存器,那么这个%0来自于输入部分的value,r表示一个通用寄存器,具体哪个通用寄存器,系统自己选。

    所以这里在输出部分来看,意思是汇编要向c输出数据%0,假设是寄存器r0,那么c1中的读到r0,r0再存到value;破坏部分是value,它是栈中的数据,所以是memory部分被破坏。

    3、优化

     http://www.lxway.com/290482066.htm

  • 相关阅读:
    jQuery插件开发——全屏切换插件
    原生JS实现全屏切换以及导航栏滑动隐藏及显示——修改
    CSS 3学习——animation动画
    CSS 3学习——transition 过渡
    CSS 3 学习——transform 3D转换渲染
    CSS 3学习——transform 2D转换
    消息过滤
    jms消息组成
    vim常用命令整理
    知识碎片
  • 原文地址:https://www.cnblogs.com/gary-guo/p/5796548.html
Copyright © 2011-2022 走看看