Linux平 台 下 的 MIX 汇 编 器 设 计 与 实 现The Design and Realization of MIX Compiler under 目 录第1 章绪论11.1 Linux 下编译的一般过程11.2 Makefile 文件简介21.3 C++ 编程语言31.4 GCC 编译器简介3第2 章系统开发基础知识简介42.1 MIX 系统与汇编语言简介42.1.1 MIX 系统简介42.1.2 MIX 指令集62.1.3 MIXAL 汇编语言72.2 虚拟机技术简介8第3 章系统总体规划与设计93.1 概要介绍93.1.1 MIX 汇编语言的汇编93.1.2 MIX 机器指令的载入93.1.3 MIX 机器指令的运行93.2 汇编器概要设计103.2.1 词法分析器103.2.2 语法分析器103.2.3 代码生成器113.2.4 符号表113.2.5 错误处理模块113.3 汇编器主要数据结构与算法113.3.1 地址计数器LC..........................113.3.2 符号表113.3.3 未知标号表12第4 章系统具体设计与实现134.1 MIX 系统基本结构模块概述134.2 MIX 虚拟机系统的具体实现134.2.1 Makefile 文件154.2.2 MIX 虚拟机主程序174.2.3 MIXAL 汇编调试器主程序184.2.4 Assemble 汇编程序18结论22参考文献23摘 要MIX 计算机是一个假想的计算机,它来源于著名的《计算机编程艺术》(the art of computer programing)。现实中并没有真正的实体机器,为了学习这本书,作者就在自己的PC上实现该计算机的虚拟机以使书上的代码可以顺利运行。C/C++ 是Linux 操作系统平台下的主流语言,相对简便好用,就选用C++作为实现的主要语言,这涉与到Linux 平台下的基本的C++ 编译的知识。这部分编译知识与平常使用较多的Windows 平台下的编译知识有着显著不同,所以会进行较多的介绍。在一台电脑上模拟另一种体系结构不同的计算机涉与到了虚拟机的基本知识,虚拟机技术的核心是汇编技术。本文首先简单介绍了Linux 下编译的一般过程、Makefile文件以与开发环境,包括MIX系统、汇编语言以与虚拟机技术。然后介绍了本系统的总体规划与设计。最后讲述了系统具体设计与实现。关键词MIX 汇编器,VM技术,C/C++ ,LinuxABSTRACTMIX is a fictitious 16 bits computer created by D E.Knuth in his famous book—The Art of Computer Programming,and all algorithms in his book are coded by MIX assemble language. Nowadays computers can not execute those codes, so I want to achieve the main system structu...