汇编语言编程基础 基于LoongArch_第1页
汇编语言编程基础 基于LoongArch_第2页
汇编语言编程基础 基于LoongArch_第3页
汇编语言编程基础 基于LoongArch_第4页
汇编语言编程基础 基于LoongArch_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

汇编语言编程基础基于LoongArch读书笔记模板01思维导图目录分析精彩摘录内容摘要读书笔记作者介绍目录0305020406思维导图编程基础计算机汇编语言汇编语言架构读者指令指令第章小结习题程序器文件格式浮点汇编符号本书关键字分析思维导图内容摘要内容摘要汇编语言是人和计算机沟通的最直接的方式,它描述了机器最终所要执行的指令序列。汇编语言和机器语言一样都是和计算机体系架构强绑定的低级语言。本书是龙芯自主指令集的首本汇编语言教程,系统讲解龙芯处理器全新的自主指令系统架构LoongArch。本书循序渐进地介绍基于LoongArch的汇编语言知识,包括计算机语言、使用汇编语言的场景等基础知识,寄存器、指令集、函数调用等汇编语言的核心内容,以及编写程序示例和常用的调试手段。本书并不是逐条地讲解每一条指令的功能,而是通过关键指令的拆解来介绍计算机工作的基本原理,同时恰当地指出LoongArch的特殊之处,便于读者理解、实践、应用LoongArch。本书非常适合基于龙芯架构的工程技术人员学习参考,也可作为从事计算机体系结构或计算机系统设计的工程技术人员的参考书,还可用作大学计算机专业的延伸阅读资料。本书的读者应具备以下基础:具有计算机的使用经验,具有计算机基础知识,具有一门高级语言(C、Java、Python等)的基本编程基础知识。目录分析1.1计算机语言1.2汇编语言的使用场景1.3龙芯系列处理器和龙芯架构介绍1.4龙芯汇编语言程序编写示例第01章汇编语言和龙芯架构简介1.6习题1.5本章小结第01章汇编语言和龙芯架构简介1.1计算机语言1.1.1机器语言1.1.2汇编语言1.1.3高级语言1.2汇编语言的使用场景1.2.1场景1——快速定位问题和分析问题1.2.2场景2——性能分析和优化1.2.3场景3——完成高级语言无法实现的功能1.3龙芯系列处理器和龙芯架构介绍1.3.1龙芯系列处理器1.3.2龙芯自主指令系统2.1LoongArch指令特性2.2C语言到LoongArch的编译过程2.3本章小结2.4习题第02章一窥LoongArch指令风貌2.1LoongArch指令特性2.1.1指令组成和指令分类2.1.2寄存器2.1.3指令长度和编码格式2.1.4指令汇编助记格式2.1.5符号扩展2.1.6寻址方式2.2C语言到LoongArch的编译过程2.2.1预处理和编译阶段2.2.2机器指令生成阶段2.2.3链接阶段3.1运算指令3.2访存指令3.3转移指令3.4其他杂项指令3.5特权等级和特权指令概述12345第03章LoongArch基础整数指令集3.7习题3.6本章小结第03章LoongArch基础整数指令集3.1运算指令3.1.1算术运算指令3.1.2逻辑运算和条件赋值指令3.1.3移位运算指令3.1.4位操作指令3.2访存指令3.2.1普通访存指令3.2.2边界检查访存指令3.2.3栅障指令3.2.4原子访存指令3.3转移指令3.3.1有条件的分支指令3.3.2无条件分支指令和跳转指令3.3.3跳转范围3.4其他杂项指令3.4.1系统调用指令3.4.2断点例外指令3.4.3读取恒定频率计时器信息指令3.4.4读取CPU特性指令3.4.5CRC指令3.4.6边界检查指令4.1浮点数存储方式和数值范围4.2浮点寄存器4.3浮点运算指令4.4浮点访存指令第04章LoongArch基础浮点数指令集4.5浮点比较指令4.6浮点分支指令4.7浮点转换指令4.8浮点搬运指令4.9本章小结4.10习题010302040506第04章LoongArch基础浮点数指令集4.1浮点数存储方式和数值范围4.1.1规格化的值4.1.2非规格化的值4.1.3正负无穷大或者NaN4.2浮点寄存器4.2.1浮点寄存器4.2.2条件标志寄存器4.2.3浮点控制状态寄存器4.4浮点访存指令4.4.1浮点普通访存指令4.4.2浮点边界检查访存指令5.1数据类型、数据对齐和字节序列5.2LoongArch寄存器使用约定5.3函数调用约定5.4函数栈布局第05章LoongArchABI5.5系统调用约定5.7习题5.6本章小结第05章LoongArchABI5.1数据类型、数据对齐和字节序列5.1.1数据类型5.1.2数据对齐5.1.3字节序列5.2LoongArch寄存器使用约定5.2.1通用寄存器使用约定5.2.2浮点寄存器使用约定5.3函数调用约定5.3.1函数参数传递5.3.2函数返回值传递6.1ELF文件格式解析6.3可执行文件与进程虚拟空间的映射6.2进程虚拟空间和页大小第06章LoongArch目标文件和进程虚拟空间6.5习题6.4本章小结第06章LoongArch目标文件和进程虚拟空间6.1ELF文件格式解析6.1.1ELF文件头6.1.2可重定向文件中的段和段头表6.1.3可执行文件中的段和程序头表6.1.4符号和符号表6.1.5重定位和重定位表7.1汇编源程序.s文件和.S文件7.2汇编源文件中的汇编器指令7.3汇编源文件中的汇编指令7.4汇编源程序实例文件hello.S第07章编写LoongArch汇编源程序7.5没有函数栈的汇编源程序7.7习题7.6本章小结第07章编写LoongArch汇编源程序7.2汇编源文件中的汇编器指令7.2.1符号定义相关的汇编器指令7.2.2逻辑控制相关的汇编器指令7.3汇编源文件中的汇编指令7.3.1汇编指令7.3.2汇编宏指令8.1内嵌汇编基本格式8.2约束字符8.3限制符volatile8.4脱离libc库的最“小”程序示例第08章内嵌汇编8.6习题8.5本章小结第08章内嵌汇编8.1内嵌汇编基本格式8.1.1输入操作数和输出操作数8.1.2破坏描述8.1.3有名操作数8.4脱离libc库的最“小”程序示例8.4.1编写主程序8.4.2链接脚本8.4.3程序的运行9.1GDB调试器的常用命令9.2程序单步调试9.3本章小结9.4习题第09章调试汇编程序9.1GDB调试器的常用命令9.1.1GDB的启动和退出9.1.2断点设置9.1.3查看变量、内存数据和寄存器信息9.1.4查看堆栈信息9.2程序单步调试9.2.1语句单步调试9.2.2汇编指令的单步调试9.2.3退出当前函数10.1计算机体系架构的三类并行技术10.3指令融合和对齐10.2使用向量指令第10章汇编程序性能优化10.4指令调度10.5循环展开10.6性能分析工具perf10.7本章小结10.8习题12345第10章汇编程序性能优化10.4指令调度10.4.1指令流水线和流水线冲突10.4.2指令调度10.6性能分析工具perf10.6.1perfstat的使用10.6.2perftop的使用10.6.3perfrecord/report的使用读书笔记读书笔记

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论