Skip to content

汇编语言基础教程——基于LoongArch架构

教程系统讲解了龙芯处理器全新的自主指令系统架构LoongArch,循序渐进地介绍基于LoongArch的汇编语言知识,包括计算机语言、使用汇编语言的场景等基础知识,寄存器、指令集、函数调用等汇编语言的核心内容,以及编写程序示例和常用的调试手段。

点击阅读

内容整体概览

掌握汇编语言需要综合运用多方面的知识,包括信息表示与处理、处理器体系架构、存储器层次结构以及程序的生命周期和编译过程,而不仅限于汇编语言本身的语法。鉴于知识体系的广泛性,本书难以面面俱到。本书聚焦于龙芯汇编语言的实践应用,系统讲解如何使用龙芯汇编语言编写程序,同时适当扩展处理器体系架构、程序编译过程及调试工具等相关知识。对于汇编语言涉及的基础内容,如二进制与十六进制表示、进制转换、基本数学运算及逻辑运算等,本书未作专门阐述。因此,本书适合具备计算机基础理论知识的读者。相关知识欠缺的读者,建议先行通过其他课程或教材进行补充学习。

第一至四章重点介绍汇编语言概念及龙芯基础指令集LoongArch,内容涵盖汇编语言的基本概念与应用场景、LoongArch指令特性、C语言到LoongArch指令的编译过程,以及基础整数指令集和浮点指令集。龙芯官方架构参考手册已对各条指令的功能进行了详细说明,本书在此基础上,着重讲解整数指令集和浮点指令集的实际应用,并通过大量示例帮助读者快速掌握龙芯汇编语言编程。

第五至八章深入探讨LoongArch应用程序二进制接口(ABI)及汇编程序编写,具体包括整型与浮点寄存器的使用规范、函数调用约定与栈布局、目标文件格式、汇编源程序与内嵌汇编的语法及编写实例。若要无障碍阅读乃至独立编写正确、健壮的汇编程序,读者必须透彻理解并掌握这些内容。鉴于本部分内容具有较强的工程实践性,建议读者在学习过程中加强动手实践,以深化理解。

第九至十章详细阐述汇编程序的调试方法与性能优化技术,包括程序调试工具GDB、性能分析工具perf的使用方法,以及常见的汇编级性能优化手段。由于调试工具的命令参数繁多,且实际工作中难以全部用到,本书仅作概要性介绍。读者在实际应用中,建议参考工具的官方帮助文档获取详细信息。汇编程序性能优化涉及知识面广、难度较大,本书力求以简明易懂的方式介绍相关体系架构知识,并系统讲解常见优化技术,包括向量指令、指令融合、指令调度及循环展开等。