第4章TMS320C54x汇编语言程序设计重点.ppt
文本预览下载声明
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * DSP原理及应用 * 存储区间说明语句: origin: 用来指定存储区间的起始地址,可简 写为org或o。其值以字为单位,可以 用十进制、八进制或十六进制数表示。 Length: 用来指定存储器空间的长度,可简写 为len或l,其值以字为单位,可以用 十进制、八进制或十六进制数表示。 1. MEMORY指令 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * 【例】用MEMORY伪指令编写连接命令文件。要求: 程序存储器:4K字ROM,起始地址为C00h,取名为ROM。 数据存储器:32字RAM,起始地址为60h,取名为SCR。 512字RAM,起始地址为80h,取名为CHIP。 file1.obj fiel2.obj -o Prog.out MEMORY { PAGE 0: ROM: origin=C00h, length=1000h PAGE 1: SCR: origin=60h, length=20h CHIP: origin=80h, length=200h } 两个输入文件 链接命令选项 指令字 页面名称 区间名称 起始地址 区间长度 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * 【例4.5.2】用MEMORY伪指令编写连接命令文件。 file1.obj fiel2.obj -o Prog.out MEMORY { PAGE 0: ROM: org=C00h, len=1000h PAGE 1: SCR: org=60h, len=20h CHIP:org=80h, len=200h } PAGE 0: ROM: org=C00h, len=1000h 程序存储器 00000h 0FFFFh 00C00h 1000h 01C00h ROM PAGE 1: SCR: org=60h, len=20h 数据存储器 00000h 0FFFFh 00060h 0007Fh 20h SCR CHIP:org=80h, len=200h 00080h 200h 0027Fh CHIP 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * 用来控制段的构成与地址分配。 指令功能: ① 说明如何将输入段组合成输出段; ② 在可执行程序中定义输出段; ③ 规定输出段在存储器中的存放位置; ④ 允许重新命名输出段。 2. SECTIONS指令 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * SECTIONS指令的句法: SECTIONS { name:[property, property, property, …] name:[property, property, property, …] name:[property, property, property, …] } 指令字 输出段 说明语句 段名:定义输出段的名称。 属性:定义该段的内容和存储器的分配。 段名 属性 属性 属性 2. SECTIONS指令 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * 段属性用来定义输出段的内容和存储地址的分配。包括的内容如下: ① 装入存储器分配 ② 运行存储器分配 ③ 输入段 ④ 段的类型 ⑤ 充填值 2. SECTIONS指令 第4章 TMS320C54x汇编语言程序设计 * DSP原理及应用 * ① 装入存储器分配 用于定义段装入时的存储器地址。 语法格式: load=allocation 或 allocation 或 allocation allocation: 关于段地址的说明,即给段分配存储
显示全部