zoukankan      html  css  js  c++  java
  • mdk/iar汇编区别

    在代码移植中,经常遇到iar的代码转换问题,在此不间断记录一些,个人感觉还是IAR的更接近C一些,备查:

    1. #ifdef的使用

    1 // IAR
    2 #ifdef MACRO_XX
    3 #endif
    4 
    5 // MDK(行首有空格)
    6     IF :DEF:MACRO_XX
    7     ENDIF

    2. 声明全局变量/函数

    1 // IAR
    2 PUBLIC
    3 
    4 // MDK
    5 EXPORT

    3. 引用外部变量/函数

    1 // IAR
    2 EXTERN
    3 
    4 // MDK
    5 IMPORT

    4. 函数的实现

      MDK不允许加":",IAR均可

    5. 数据段(FREE_MEM)的定义

     1 // IAR:
     2         RSEG    FREE_MEM:DATA
     3         PUBLIC  __tx_free_memory_start
     4 __tx_free_memory_start
     5         DS32    4
     6 
     7 // MDK
     8     AREA    FREE_MEM, DATA, READWRITE
     9     EXPORT    __tx_free_memory_start
    10 __tx_free_memory_start
    11     SPACE    4

    6. 代码段的定义

    1 // IAR
    2         SECTION `.text`:CODE:NOROOT(2)
    3 
    4 // MDK
    5     AREA    |.text|, CODE, READONLY

    7. 待续...

    博客园:http://www.cnblogs.com/linux-farmer/
  • 相关阅读:
    ntopng网络流量实时监控
    LVS初始使用步骤
    Pycharm快捷方式
    Python之路,Day9, 进程、线程、协程篇
    Python之路,Day7
    Python 之路 Day5
    Python之路,Day6
    Python之路,Day3
    Python之路,Day2
    Python之路,Day1
  • 原文地址:https://www.cnblogs.com/linux-farmer/p/13336646.html
Copyright © 2011-2022 走看看