小命 第五章汇编语言编程举例 第一节汇编语言编程的基本方法 第二节DSP的浮点运算方法 第三节DSP在信号发生器上的应用 第四节用DSP实现FIR滤波器
2 第五章 汇编语言编程举例 第一节 汇编语言编程的基本方法 第二节 DSP的浮点运算方法 第三节 DSP在信号发生器上的应用 第四节 用DSP实现FIR滤波器
小命 第一节汇编语言编程的基本方法 1.堆栈的使用 压入数据时,堆栈从高地址向低地 要址增长。 点2压栈时指针先减,SP-1,再压入数 据 3出栈时,先弹出数据后,再SP+1。 4如要用堆栈,必须先设置,后使用
3 第一节 汇编语言编程的基本方法 1.堆栈的使用 1.压入数据时,堆栈从高地址向低地 址增长。 2.压栈时指针先减,SP-1,再压入数 据; 3.出栈时,先弹出数据后,再SP+1。 4.如要用堆栈,必须先设置,后使用。 要 点
小命 例5-1设计一存储空间为100个单元的堆栈 size set 100 ;设置堆栈空间的 ;大小为100 stack. sect“STK”,size;设置堆栈段的首地址 ;和堆栈空间 STM# stack+size,SP;将栈底地址指针送 数据存储器 SP,对其初始化 栈顶 stack 可用栈区 sP→[最后用的单元°TX 栈底 已用栈区 65535
4 例5-1 设计一存储空间为100个单元的堆栈。 size .set 100 ;设置堆栈空间的 ;大小为100 stack .usect “STK”,size ;设置堆栈段的首地址 ;和堆栈空间 STM #stack+size,SP ;将栈底地址指针送 ; SP,对其初始化
小命 2.加、减法和乘法运算 例5-2编写求解加、减法的程序,计算z=x+y-W。 SUM1:LD@x,A;将x地址的内容送A ADD@y,A;将y地址的内容与A中x值相加 SUB@w,A;将A中的内容与w相减,得z STLA,@z;将A的的计算值存入z地址中 例5-3写求解直线方程的程序,计算y=mx+b SUM2:LD@m,T;将皿地址的内容送T MPY國x,A;将x地址的内容与T中的m相乘, ;结果送A ADD@b,A;将A中的mx与b地址的内容相加, ;结果送A STLA,@y;将A的的计算结果存入y地址中
5 例5-2 编写求解加、减法的程序,计算z=x+y-w。 SUM1:LD @x,A ;将x地址的内容送A ADD @y,A ;将y地址的内容与A中x值相加 SUB @w,A ;将A中的内容与w 相减,得z STL A,@z ;将A的的计算值存入z 地址中 例5-3 写求解直线方程的程序,计算y=mx+b。 SUM2:LD @m,T ;将m 地址的内容送T MPY @x,A ;将x 地址的内容与T中的m相乘, ;结果送A ADD @b,A ;将A中的mx与b 地址的内容相加, ;结果送A STL A,@y ;将A的的计算结果存入y 地址中 2. 加、减法和乘法运算
小命 3.数据块传送 /特传送速度比加载和存储指令要快 传送数据不需要通过累加器; 点可以寻址程序存储器; 与RPT指令相结合(重复时,这些指 令都变成单周期指令),可以实现 数据块传送
6 传送速度比加载和存储指令要快; 传送数据不需要通过累加器; 可以寻址程序存储器; 与RPT指令相结合(重复时,这些指 令都变成单周期指令),可以实现 数据块传送。 3. 数据块传送 特 点