- 4
- 0
- 约4.99千字
- 约 18页
- 2017-05-09 发布于湖北
- 举报
第7章 目标代码生成精要
第7章 目标代码生成 7.1 汇编语言虚拟计算机模型 7.2 从四元式到汇编语言的翻译 7.3 一个简单目标代码生成器 7.4 静态地址分配 7.1 汇编语言虚拟计算机模型 7.2 从四元式到汇编语言的翻译 * ㈠任务 将中间代码变换成目标代码,实现源程序的最后翻译。由于涉及到目标机器的系统结构,此阶段的工作最复杂。 ㈡目标代码的形式 ①已定位的机器语言代码 编译后可立即执行。 ②待装配的机器语言代码模块 目前大多数编译系统所产生的目标代码均为可重定位的机器指令。在执行前,将它和系统函数(源程序中使用)的机器指令连接成一个程序,对未确定的地址进行定位(用户程序为0地址空间),形成可执行的机器语言程序。 在执行时,操作系统可将目标代码装入内存的任意位置。 ③汇编语言代码 需经汇编程序翻译,将其转换成可执行的机器语言代码。 由于硬件厂商提供机器的汇编程序,所以编译程序的目标代码通常为汇编语言形式。 ㈢目标代码生成要求 ①目标代码数与中间代码数的比值尽可能小(即目标代码数尽可能少)。 ②充分利用寄存器,减少访问内存的次数。 ③删除不必要的临时变量。 ㈠内存 ①共有64k个字,1个字有16个二进制位(2Byte),内存地址标识为0-65535。 ②划分为256页,页号0-255,每页的长度为256个字,页内位移为0-255。 ③地址计算:
原创力文档

文档评论(0)