编译原理 chapter02 编译程序的组织

1.编译程序过程的八大模块在这里插入图片描述
2.编译程序的遍(有一遍和多遍)
在这里插入图片描述
3.多遍的好处与坏处;
在这里插入图片描述
4.一遍的过程
在这里插入图片描述
核心在于语法分析,在语法分析需要token的时候,词法分析就去源代码取出需要的部分,然后语法分析器在把部分语法树进行语义分析以及代码生成。
5.编译过程的伙伴工具(符号表、出错处理、预处理、连接器)
①.符号表:在进行词法分析生成token后,生成语法树,会把各种变量放进符号表,然后用于生成目标代码。
②.出错则是在编译的各个过程都在进行出错检查。
③.预处理,(主要是删除注释 --把注释换成空格–以及一些宏定义 )有些高级语言在词法分析之前一会又预处理,比如C,它的__FILE__则表示当前C语言的文件名位置,__LINE__表示当前C再具体的哪一行.

  • C的部分知识:#include <stdio.h> 表示引入stdio.h的文件,std是stddandard标准的缩写,IO则是输入输出,h为头文件,所以引入的就是标准输入输出的头文件。

  • 还有很多比如stdarg 标准参数 stdlib标准库等等

④test.o是object文件 目标文件 test.ld 加载文件

在这里插入图片描述
第一个move指令 第二个ri寄存器 第三个表示a在内存 最后一个是指地址

在这里插入图片描述
第一个加法指令 第二个ri寄存器 第三个 表示可以直接相加 第四个2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值