第6章节__C语言和汇编语言混合编程(C55x_DSP).pptVIP

  • 47
  • 0
  • 约4.01千字
  • 约 22页
  • 2017-09-15 发布于浙江
  • 举报

第6章节__C语言和汇编语言混合编程(C55x_DSP).ppt

第6章节__C语言和汇编语言混合编程(C55x_DSP)

第6章 C语言和汇编语言混合编程   在很多DSP应用中都使用C语言和汇编语言进行混合编程。C语言具有可读性高、便于维护和可移植性好等优点,然而汇编语言具有实时运行效率高和代码效率高的优点。使用汇编语言可以更充分地利用DSP的硬件资源,例如乘累加单元、单指令重复、块重复和块移动等。   某些程序使用汇编语言编写时,实时运行效率是C语言的几十倍或更多,运算量越大,汇编语言编写的程序实时运行效率越明显。用C函数调用汇编子程序和C函数一样有参数传递和返回问题,下面介绍用C函数调用C55x汇编子程序的方法。 6.1.1 C语言和汇编语言之间名称转换   C函数调用汇编子程序时,汇编程序所有变量名和子函数名需加前缀下划线“ _ ”,例如使用_sum作为汇编语言程序子函数名。如果汇编程序中定义了变量,必须加前缀下划线,C函数才能使用该变量。前缀“ _ ”只在C编译时使用,当我们用C函数调用汇编子程序和变量时,不需要加前缀“ _ ”。以下是C函数调用汇编子程序的例子。 FIQ的中断向量地址在0x0000001C,而IRQ的在0 当允许IRQ中断时,CPSR[7]=0即CPSR的I位置为0.当允许FIQ中断时,CPSR[6]=0即CPSR的F位为0。 如果2个中断同时发生时,由于FIQ拥有最高中断优先级,而IRQ只有中等中断优

文档评论(0)

1亿VIP精品文档

相关文档