- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
组成原理实验十二 建立汇编指令系统上海大学 2011级
计算机组成原理实验课程 实验十二 建立汇编指令系统 实验目的: 建立一个含中文助记符的汇编指令系统。 用建立的指令系统编制一段程序,并运行之。 教学目的: 深刻理解指令系统。 * 一.背景知识(1) 编制汇编指令:在实验三的“举例”中我们编制了一条微指令,它实现“A+W的结果右移一位后的值输出到OUT”,本质上它是编制了这个微指令对应的24个控制信号的电平;实验四的任务3中,我们修改机器指令E8,使其成为“输出A+W的结果左移一位后的值到OUT”指令,它本质上是编制了μEM中从E8开始的连续4个地址中的24bit值,即连续的四条微指令;实验六的背景知识2使我们知道:“汇编指令是表达机器指令功能的指令助记符,二者的对应关系由编制的汇编指令表确定”。按步完成这三个编制过程,就定义好一条全新的汇编指令,进一步也可以定义一个汇编指令系统——指令集。 汇编环境CP226考虑到了教学上定义汇编指令系统的需求,提供了完成这三个编制任务的集成环境,只要按规定的格式送入编制的符号,系统就会生成相应的汇编指令或汇编指令系统。 2. 汇编表文件:这个文件的后缀为 .DAT,它是一个二维表格式文件,其每一行对应一条指令,这个表共有3列,如图1。第一列是指令的汇编助记符,宽度为20个半角字符。第二列是指令的16进制编码形式(机器指令),在实验箱系统就是指令的微程序在μEM中的起始地址,宽度为8个半角字符。第3列是这条指令的字节数,宽度为1个半角字符,这是本表的重要汇编信息,也是设立本表的原因之一。 这个文件的主要作用是:当编译(汇编)源程序时,查此表把汇编指令翻译成机器指令。即这就是汇编表。 构造这个表文件时也不能带标题行。利用已有.DAT文件做为模板来构建新指令系统比较方便。具体操作见实验提示。 一.背景知识(2) 1 1 10 14 ADD A,R? OUTA 20 8 1 图1. 汇编表文件格式 一.背景知识(3) 3. 微程序型指令文件:这个文件的后缀为 .MIC,它也是一个二维表格式的文件,其每一行对应一条微指令,这个表共有11列(字段),每一列都定义好了属性和宽度,例如:图2是指令集insfile1.MIC的格式,这个指令集的全部内容见指导书103页到110页。 这个表的主要作用是:当系统调用此文件时把其第4列“微程序”的内容送入其第3列“微地址”指定的μEM(微程序存储器)单元。即初始化μEM。表的第一列为指令的汇编助记符,内容与表1的第1列一致。5到11列是对本行微指令的说明,内容可以省略。 构造这个表文件时不能带标题行。利用已有.MIC文件做为模板来构建新指令系统比较方便。具体操作见实验提示。 12个英文字符宽 3 7 3 14 19 9 12 10 4 4 图2. 微程序型指令文件格式 1 加运算 FFFE90 11 T1 1 A输出 A R? FFF7EF 10 T2 ADD A,R? 一.背景知识(4) 4. 指令的机器码文件:这个文件的后缀为 .MAC, 也是一个二维表格式文件,每一行对应一条指令,表共有5列,如图3。第1列是汇编助记符,宽度14,与表1的第1列一致。第2列是机器码1,它是指令的微程序在μEM中起始地址的二进制表示,其最后两位是对R0~R3的选择,所以与表2的第3列一致,宽度为15。第3列是机器码2,是指令带的立即数或存储器地址,宽度为4 。第4列是机器码3,是指令带的第二个存储器地址,宽度2。第5列是注释,宽度100,用于对指令进行说明。实验箱默认的指令系统insfile1没有机器码3,其此表的具体内容见指导书101页和102页。 这个文件的主要作用是:解释汇编表的机器码细节,所以当编译源程序中的多字节指令时,可能要查此表。 构造这个表文件时也不能带标题行。利用已有.MAC文件做为模板来构建新指令系统比较方便。具体操作见实验提示。 15 4 2 图3. 机器码文件格式 000100××10-13 ADD A,R? 14 100 二. 实验任务 编制一个汇编指令系统,包含下例助记符: ① A+W A,#*; ②OUTA; ③跳到 *; ④LD A,#*; 5 延时 2. 用所编制的指令系统,写出源程序,完成OUT寄存器交替显示22,55,和22+55的值。 交替频率为可以清晰辨识即可。 *
文档评论(0)