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

  • 相关阅读:
    初识Ubuntu 18.04(更换系统头像,截图,sy)
    HDU
    HDU
    进度1
    开课博客
    返回一个整数数组中最大子数组的和
    开学第一节课测试感受
    网页记账本开发四(基本完成)
    网页记账本开发三
    网页记账本开发二
  • 原文地址:https://www.cnblogs.com/gary-guo/p/5796548.html
Copyright © 2011-2022 走看看