计算机组成原理实验手册(TEC2000)

  • 格式:doc
  • 大小:16.48 MB
  • 文档页数:30

TEC-2000使用手册教学机使用方法简介摘要:一、设置左下方5个开关状态,确定实验箱的工作模式二、选按RESET键,再按START键教学机开始工作教学机与PC机的互联摘要:一、教学机和PC机通过RS-232串行口通信。

二、教学机使用其固化在ROM上的监控程序与PC机运行的仿真终端程序PCEC16通信。

三、使用PCEC主要可完成以下功能1、通过PC机向教学机加载程序2、向监控程序发送调试命令,使之控制程序在教学机中的运行,可令程序单步运行、连续运行等,控制方法参见监控程序一节。

仿真终端程序PCEC监控程序PCEC与监控程序的通信方法一、PCEC与监控程序的通信1、PCEC在接到串行口数据(8位)时的动作(教学机送来的):将接收到的数据当成ASCII 码,在屏幕上显示对应的字符。

2、监控程序在接到串行口数据时的动作(PC机上的PCEC送来的):若接到的字符为A/U/G/T/R/E/D这7个监控命令,则继续接收命令的剩余字符,直到收到回车符,则接收一条完全的命令,接下来根据收到的命令做相应的操作。

例如,收到的是A命令,则继续接收程序的机器码,并将这些机器码放到指定的内存地址;若收到的是G命令,则跳去执行用户程序,直至执行到用户程序的RET指令,返回监控程序继续执行;若是U命令,则将目标地址的指令进行反汇编,将反汇编结果发送给PCEC显示……二、PCEC与教学机上的用户程序的通信1、用户在PC机上(PCEC运行在前台)按下键盘按键,该键的ASCII码会被PCEC发送给教学机的串行通信控制器8251,8251将接收下来的ASCII码存放在其数据输入寄存器(端口号80H),用户程序只要读80H(IN 80H)端口,即可获得PC按键的ASCII码(R0低8位)。

2、用户程序若要在PC机的PCEC窗口显示一个字符,只需将该字符的ASCII码存放在R0的低8位,然后用OUT 80H将R0的值送到80H端口(8251的数据输出寄存器端口号),则接下来8251会自动将该ASCII码发给PCEC,PCEC收到ASCII码后即会将其显示在其窗口中。

汇编编程在仿真终端下,使用监控程序提供的A命令逐行编程例1、小结一、每个程序最终必需以RET 指令结束,使得程序结束后返回去运行监控程序二、80H 、81H 两端口分别是串行通信控制器8251的数据端口与状态端口,对它们进行读写能达到以下功能1、读80H 端口(IN 80H ),可使教学机监控程序向PCEC 读取用户在PC 键盘上按下按键对应的ASCII 码,存储到R0寄存器2、写80H 端口(OUT 80H),可使教学机监控程序将R0的值发送给PCEC ,PCEC 将接收到的值当做ASCII 码,将相应字符显示在PC 机显示器上3、读状态端口(IN 81H ),可得到串行通信控制器8251的状态字,其D0位用于指示数据是否发送就绪(D0=1发送就绪),D1位用于指示数据是否接收就绪(D1=1接收就绪),这里的8251是教学机COM1对应的那片8251,发送和接收指教学机的发送接收。

串行通信控制器8251状态寄存器的状态位:使用汇编源程序编程摘要一、在PC机上用文本编辑器编写教学机汇编源程序二、在PC机上用交叉汇编程序ASEC编译教学机源程序,生成教学机可执行代码二、通过PCEC将教学机可执行代码加载到教学机内存中交叉汇编程序教学机编程源文件格式示例例1、org 2000hmvrd r0,44hout 80hjr 2000hretend例2、ORG 2000HMVRD R2,0AHMVRD R0,30HOUT 80HDEC R2JRZ 200EHPUSH R0SHR R0JRNC 2008HPOP R0INC R0JR 2004HRETEND教学机汇编编程小结1、可使用标号做跳转,标号字符数不可太长(8位?)org 2000htest:mvrd r0,44hout 80hjr testretend2、可使用标号指示子程序入口,标号字符数不可太长(8位?)org 2000hmvrd r0,44hout 80hcala xx…retxx:push r0…retendmvrd R14,1234horg 2000hmvrd r0,44hout 80h;将R0保存的ASCII字符显示在PC机的屏幕上retend教学机内存空间用法:0000~FFFFH:可寻址64K内存地址空间,但其中只有部分的地址空间对应物理存储单元。

0000~1FFFH:ROM(8K字*16位),保存监控程序2000~27FFH:RAM(2K字*16位)2000~25FFH:1.5K字2600~27FFH:0.5k字,监控程序专用实验一、TEC-2000汇编语言程序设计实验目的1.学习和了解TEC-2000十六位机监控命令的用法;(参考实验指导书P116)2.学习和了解TEC-2000十六位机的指令系统;3.学习TEC-2000十六位机汇编程序设计。

实验设备TEC-2000教学机和PC机各一台实验内容1.熟悉教学机的组成,完成教学机与PC机互联(具体步骤见实验参考)。

2.熟悉监控命令的使用(具体步骤见实验参考)。

3.汇编程序设计a)设计一个小程序,从键盘上接收一个字符并在屏幕上输出显示该字符。

b)编程将Fibonacci数列的前20个数顺序存放在主存地址为2200H~2213H单元内。

c)编程在屏幕上显示Fibonacci数列的前20个数(显示数值的二进制码即可)。

注意事项内存:只能使用2000~27FF这个空间R:不用能R4,R5默认数制是16进制0,1,逗号的ascii码分别为30H,31H,2CH预习要求1.熟悉教学机的基本指令集2.实验前仔细阅读本文档的“TEC2000使用手册”3.提交实验预习报告,其中给出“实验报告格式”一~四的内容。

实验报告格式一、实验目的二、实验设备三、实验内容四、汇编程序设计:给出程序源代码五、实验小结实验参考一、教学机与PC机互联1.关闭电源,将TEC2000上的COMl口与PC机的串口相连;2.接通电源,在PC机上运行PCEC.EXE文件,设置所用PC机的串口为“l”或“2”,其它的设置一般不用改动,直接回车即可;3.置控制开关为00101(连续、内存读指令、组合逻辑、16位、联机),开关拨向上方表示“1”,拨向下方表示“0”,“X”表示任意。

其它实验相同;4.按一下“RESET”按键,再按一下“START”’按键,主机上显示:TEC-2000 CRT MONITORVersion 2.0 2001.10Computer Architecture Lab.,Tsinghua UniversityCopyright Jason He>二、监控命令的使用1.用R命令查看寄存器内容或修改寄存器的内容1)在命令行提示符状态下输入:R↙;显示寄存器的内容注:寄存器的内容在运行程序或执行命令后会发生变化。

2)在命令行提示符状态下输入:R R0↙;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空格,也可有—个或数个空格主机显示:寄存器原值:xxxx在后面输入新的值0036再用R命令显示寄存器内容,则R0的内容变为0036。

2.用D命令显示存储器内容在命令行提示符状态下输入:D 2000↙会显示从2000H地址开始的连续120个字的内容;连续使用不带参数的D命令,起始地址会自动加120(即78H)。

3.用E命令修改存储器内容在命令行提示符状态下输入:E 2000↙屏幕显示:2000 xxxx(地址单元的原有内容):(光标在此闪烁等待输入)输入0000(提示快捷使用方法:用E命令连续修改内存单元的值时,每修改完—个,按一下空格键,系统会自动给出下一个内存单元的值,等待修改;按回车键则退出E命令。

)依次改变地址单元2001~2005的内容为:1111 2222 3333 4444 5555用D命令显示这几个单元的内容D 2000↙可以看到这六个地址单元的内容变为0000 1111 2222 3333 4444 5555。

4.用A命令键入一段汇编源程序,主要是向累加器送入数据和进行运算,执行程序并观察运行结果。

1)在命令行提示符状态下输入:A 2000↙;表示该程序从2000H(内存RAM区的起始地址)地址开始屏幕将显示:2000:输入如下形式的程序:2000:MVRD R0,AAAA;MVRD与R0之间只有一个空格,其他指令相同2002:MVRD R1,55552004:ADD R0,R12005:AND R0,R12006:RET;程序的最后一个语句,必须为RET指令2007:↙;直接敲回车键,结束A命令输入程序的操作过程若输入有误,系统会给出提示并显示出错地址,用户只需在该地址重新输入正确的指令即可。

2)用U命令反汇编刚输入的程序在命令行提示符状态下输入:U 2000↙在相应的地址会得到输入的指令及其操作码。

注:连续使用不带参数的U命令时,将接着从上一次反汇编的最后一条语句之后继续反汇编。

3)用G命令运行前面刚键入的源程序G 2000↙程序运行结束后,观察程序的运行结果,记录寄存器R0和R1的值。

R0=?R1=?4)用P或T命令,单步执行这段程序,观察指令执行结果在命令行提示符状态下输入:T 2000↙寄存器R0=?T↙寄存器R1=?T↙寄存器R0=?T↙寄存器R0=?用P命令执行过程同上。

注:T总是执行单条指令,但执行P命令时,则把每一个CALL语句连同被调用的子程序一次执行完成。

T、P命令每次执行后均显示所有通用寄存器及状态寄存器的内容,并反汇编出下一条将要执行的指令。

实验二、脱机运算器部件实验实验描述参见下图的“6.2脱机运算器部件实验”,对其做如下修改3.实验内容1)拨动开关置为1xx00(16位机)2)D1取为0101H,D2取为1010H实验预习报告:填表6-1的ALU控制信号操作参考实验三、微程序控制器实验目的通过设计一条指令的微程序,深入理解微程序控制器的工作原理。

实验设备运行TEC-2000模拟软件的PC机。

实验内容为TEC-2000新增一条指令,其功能为将两个内存单元的内容相加,结果写回其中一个内存单元。

预习要求1、说明上述指令的指令格式并为其分配指令操作码(不能与基本、扩展指令集中的任一指令操作码相同)2、给出上述指令的执行周期微程序编码,并为其中的每一条微指令分配微地址3、说明实现上述指令应修改MAPROM存储单元的地址和值。

实验参考:一、教学计算机微程序控制器模拟程序使用说明运行“16位机微程序模拟程序.exe”,将出现图2-1所示界面。

图2-1 TEC-2000微程序模拟主界面界面的最左边是功能区,设置了程序的主要功能按钮,下面将介绍这些按钮的功能和使用方法。