| 中文摘要 | 第1页 |
| 英文摘要 | 第3-6页 |
| 第一章 引言 | 第6-10页 |
| ·课题背景 | 第6-7页 |
| ·课题主要研究内容及意义 | 第7-9页 |
| ·本论文的组织结构 | 第9-10页 |
| 第二章 连接程序 | 第10-18页 |
| ·概述 | 第10页 |
| ·连接装配程序发展历史 | 第10-12页 |
| ·编译并执行装配方案 | 第10-11页 |
| ·一般的连接装配方案 | 第11页 |
| ·绝对装配程序方案 | 第11页 |
| ·子程序连接方案 | 第11页 |
| ·重定位装配方案 | 第11-12页 |
| ·GNU简介 | 第12-13页 |
| ·GNU LD概述 | 第13-14页 |
| ·GNU LD实现方法与技术 | 第14-18页 |
| 第三章 二进制目标文件 | 第18-24页 |
| ·ELF | 第18-23页 |
| ·ELF格式基本框架 | 第19-20页 |
| ·ELF头 | 第20-21页 |
| ·节与节头 | 第21-22页 |
| ·段与程序头 | 第22-23页 |
| ·LX-1164体系结构的 ELF | 第23-24页 |
| 第四章 LX-1164硬件平台 | 第24-29页 |
| ·处理器概述 | 第24-25页 |
| ·连接程序相关的处理器特征 | 第25-29页 |
| ·字节顺序和数据对齐 | 第25-26页 |
| ·指令格式 | 第26-27页 |
| ·寻址方式 | 第27-29页 |
| 第五章 LX-1164连接程序设计实现 | 第29-40页 |
| ·模块划分 | 第29-31页 |
| ·重要数据结构 | 第31-34页 |
| ·模块连接时的存储布局设计 | 第34-35页 |
| ·第一遍扫描过程的设计 | 第35-36页 |
| ·第二遍扫描过程的设计 | 第36-38页 |
| ·重要函数设计与解析 | 第38-40页 |
| ·生成和释放哈希表函数 | 第38页 |
| ·添加符号信息到哈希表函数 | 第38页 |
| ·符号表的写入函数 | 第38页 |
| ·获取重定位节的内容函数 | 第38-39页 |
| ·查找添加字符串函数 | 第39页 |
| ·遍历哈希表函数 | 第39页 |
| ·判断是否越界函数 | 第39-40页 |
| 第六章 连接程序控制脚本的编写 | 第40-44页 |
| ·脚本文件 | 第40页 |
| ·编写 LX-1164连接程序控制脚本 | 第40-42页 |
| ·添加脚本到 BINUTILS包 | 第42-44页 |
| ·添加 BFD后端 | 第42-43页 |
| ·添加修改 LD脚本文件 | 第43-44页 |
| 第七章 运行结果分析 | 第44-49页 |
| ·连接程序运行结果 | 第44-47页 |
| ·设计一个冒泡排序程序,用 LX-1164的汇编语法实现 | 第44-45页 |
| ·用汇编程序汇编该文件 | 第45-46页 |
| ·使用连接程序连接结果 | 第46-47页 |
| ·使用软件模拟器测试 | 第47-49页 |
| 第八章 总结与展望 | 第49-50页 |
| 参考文献 | 第50-52页 |
| 致谢 | 第52-53页 |
| 在学期间发表的学术论文和参加科研情况 | 第53页 |