网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> DSP >> C6000文章 >> C64X系列 >> 文章正文
  DSP C6000的反汇编         ★★★ 【字体:
DSP C6000的反汇编
作者:61IC    文章来源:本站原创    点击数:    更新时间:2006-7-27    

#include "testcfg.h"

void Func_tmp2()
{
 int i=0;
 i++;
}

void FUNC_TEMP (void)
{
Func_tmp2(); 
}


void main()
{
 FUNC_TEMP();
}

其汇编结果:

0000CEC0          Func_tmp2:
0000CEC0 07BF005A            SUB.L2        SP,8,SP//堆栈指针减8,这里没有对B3入栈是因为在这个函数中,没有用到B3,也就是说没有修改B3
0000CEC4 0200A35A            MVK.L2        0,B4//B4对应变量i
0000CEC8 023C22F6            STW.D2T2      B4,*+SP[0x1]//将变量i入栈
0000CECC 00002000            NOP           2
0000CED0 0210205A            ADD.L2        1,B4,B4//i++
0000CED4 023C22F6            STW.D2T2      B4,*+SP[0x1]//将i再保存到原来栈的地方
0000CED8 00002000            NOP           2
0000CEDC 07BD005A            ADD.L2        8,SP,SP//修正堆栈指针
0000CEE0 008CA362            BNOP.S2       B3,5//返回到RL0
0000CEE4          FUNC_TEMP://FUNC_TEMP函数的地址
0000CEE4 01BC54F6            STW.D2T2      B3,*SP--[0x2] //B3寄存器被用来保存函数调用时的返回地址,在函数执行之前需要入栈保护,直到函数返回前再出栈
0000CEE8 00002000            NOP           2
0000CEEC 0FFFFC10            B.S1          Func_tmp2//准备跳入Func_tmp2
0000CEF0 01858162            ADDKPC.S2     RL0,B3,4//保存从Func_tmp2返回的地址
0000CEF4          RL0:                                                         
0000CEF4 01BC52E6            LDW.D2T2      *++SP[0x2],B3//将入栈的B3再出栈,对应的是main函数的RL1地址
0000CEF8 00006000            NOP           4
0000CEFC 008CA362            BNOP.S2       B3,5//返回到RL1
0000CF00          main: //主函数地址
0000CF00 01BC54F6            STW.D2T2      B3,*SP--[0x2] //B3寄存器被用来保存函数调用时的返回地址,在函数执行之前需要入栈保护,直到函数返回前再出栈0000CF04 00002000            NOP           2                           
0000CF08 0FFFFC90            B.S1          FUNC_TEMP//准备进入FUNC_TEMP函数
0000CF0C 01848162            ADDKPC.S2     RL1,B3,4//保存返回地址到B3
0000CF10          RL1: //从FUNC_TEMP函数返回后应跳入的地方
0000CF10 01BC52E6            LDW.D2T2      *++SP[0x2],B3//将之前入栈的B3再出栈
0000CF14 00006000            NOP           4
0000CF18 008CA362            BNOP.S2       B3,5

在uC/OS中,将要根据这些内容进行移植!

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    C6000 :一/二级缓存
    关于C6000系列DSP的大端和小…
    C6000的参数传递规则
    DSP串口硬件SPI接口LED显示完…
    C6000软件优化经验总结
    DSP常用外围配套芯片——C60…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号