资源描述
华北电力大学
实 验 报 告
|
|
实验名称 认识性实验
课程名称 计算机组成与结构
|
|
专业班级: 学生姓名:
学 号: 成 绩:
指导教师: 实验日期:
一、目的与要求
1.1 实验目的:
1. 学习和了解TEC-XP16教学实验系统监控命令的用法;
2. 学习和了解TEC-XP16教学实验系统的指令系统;
3. 学习简单的TEC-XP16教学实验系统汇编程序设计;
1.2 实验要求:
在使用该教学机之前,应先熟悉教学机的各个组成部分,及其使用方法。
二、实验正文
1. 实验内容
1.1 实验仪器的基本启动步骤:
(1) 准备一台串口工作良好的PC机;
(2) 将TEC-XP16放在实验台上,打开实验箱的盖子,确定电源处于断开状态;
(3) 将黑色的电源线一端接220V交流电源,另一端插在TEC-XP16实验箱的电源插座里;
(4) 取出通讯线,将通讯线的一端的9芯插头接在TEC-XP16实验箱上的串口“COM1”上,另一端接到PC机的串口上;
(5) 将TEC-XP16实验系统左下方的五个黑色的控制机器运行状态的开关置于正确的位置,在找个实验中开关应置为00110(连续、内存读指令、组合逻辑、联机、16位),控制开关的功能在开关上、下方有标识;开关拨向上方表示“1”,拨向下方表示“0”,“X”表示任意,其它实验相同;
(6) 打开电源,船形开关和5V电源指示灯亮。
(7) 在PC机上运行PCEC16.EXE文件,根据连接的PC机的串口设置所用PC机的串口为“1”或“2”, 其它的设置一般不用改动,直接回车即可。
(8) 按一下“RESET”按键,再按一下“START”按键,主机上显示:
TEC-2000 CRT MONITOR
Version 1.0 April 2001
Computer Architectur Lab., Tsinghua University
Programmed by He Jia
>
实验注意事项:
(1)连接电源线和通讯线前TEC-XP16实验系统的电源开关一定要处于断开状态,否则可能会对 TEC-XP16实验系统上的芯片和PC机的串口造成损害;
(2)五个黑色控制开关的功能示意图如下:
单步 手动置指令 组合逻辑 联机 8位
上面
下面
连续 从内存读指令 微程序 脱机 16位
(3)几种常用的工作方式(开关拨到上方表示为1,拨到下方为0;)
工作方式
5个拨动开关
连续运行程序、组合逻辑控制器、联机、16位机
00110
连续运行程序、微程序控制器、联机、16位机
00010
单步、手动置指令、组合逻辑控制器、联机、16位机
11110
单步、手动置指令、微程序控制器、联机、16位机
11010
16位机、脱机运算器实验
1XX00
3.软件操作注意事项:
(1)用户在选择串口时,选定的是PC机的串口1或串口2,而不是TEC-XP16实验系统上的串口。即选定的是用户实验时通讯线连接的PC机的端口;
(2)如果在运行到第五步时没有出现应该出现的界面,用户需要检查是不是打开了两个软件界面,若是,关掉其中一个再试;
(3)有时若TEC-XP16实验系统不通讯,也可以重新启动软件或是重新启动PC再试;
(4)在打开该应用软件时,其它的同样会用到该串口的应用软件要先关掉。
1.2 监控程序R命令、D命令、E命令的基本用法
(1) 用R命令查看寄存器内容或修改寄存器的内容
1) 在命令行提示符状态下输入:
R↙ ;显示寄存器的内容
注:寄存器的内容在运行程序或执行命令后会发生变化。
2) 在命令行提示符状态下输入:
R R0↙ ;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空格,也可有一个或数个空格
主机显示:
寄存器原值:_
在该提示符下输入新的值0036
再用R命令显示寄存器内容,则R0的内容变为0036。
(2) 用D命令显示存储器内容
在命令行提示符状态下输入:
D 2000↙
会显示从2000H地址开始的连续128个字的内容;
连续使用不带参数的D命令,起始地址会自动加128(即80H)。
(3) 用E命令修改存储器内容
在命令行提示符状态下输入:
E 2000↙
屏幕显示:
2000 地址单元的原有内容:光标闪烁等待输入
输入 0000
依次改变地址单元2001~2005的内容为:1111 2222 3333 4444 5555
注意:用E命令连续修改内存单元的值时,每修改完一个,按一下空格键,系统会自动给出下一个内存单元的值,等待修改;按回车键则退出E命令。
(4) 用D命令显示这几个单元的内容
D 2000↙
可以看到这六个地址单元的内容变为0000 1111 2222 3333 4444 5555。
1.3 思考题1 的设计与实现
l 题目:若把IN 81, SHR R0, JRNC 2028三个语句换成4个MVRR R0,R0语句, 该程序执行过程会出现什么现象? 试分析并实际执行一次。
答:实验结果如下图:
1.4 思考题2的设计与实现
l 题目:编写程序实现下述功能:键盘可以输入A-Z的大写字母,一旦输入A-Z大写字母以外的字符就退出程序。
答:程序设计:
A 2000↙ ;
输入如下形式的程序:
2000: IN 81
2001:SHR R0
2002:SHR R0
2003:JRNC 2000
2004:IN 80
2005:OUT 80
2006:MVRD R1,41
2008:CMP R0,R1
2009: JRNC 200F
200A:MVRD R2,5A
200C:CMP R0,R2
200D: JRC 20OF
200E: JR 2000
200F: RET↙
2010:↙
结果如图所示:
1.5 思考题3的设计与实现
1)题目:设计一个有读写内存和子程序调用指令的程序,功能是读出内存中的字符,将其显示到显示器的屏幕上,转换为小写字母后再写回存储器原存储区域。
答:代码如下:
E 20F0
0041 0042 0043 0044 0045 0046
A 2080
2080:MVRD R3,0006;指定被读数据的个数
2082:MVRD R2,20F0;指定被读、写数据内存区首地址
2084:LDRR R0,[R2];读内存中的一个字符到R0寄存器
2086:CLLA 2100;调子程序,完成显示功能
2087:DEC R3;检查输出的字符个数
2088:JRZ 208B;完成输出则结束程序的执行过程
2089:INC R2;未完成,修改内存地址
208a:JR 2084;转移,循环执行规定的处理
208b:RET
A 2100
2100:OUT 80
2101:MVRD R1,0020
2103:ADD R0,R1
2104:STRR [R2],R0;写R0中的字符到内存,地址同LDRR所用的地址
2105:IN 81
2106:SHR R0
2107:JRNC 2105;为完成输出过程则循环测试
2108:RET:
结果如图所示:
三、综合实验总结
1. 在完成思考题一时,在完成把IN 81, SHR R0, JRNC 2028三个语句换成4个MVRR R0,R0语句后,出现了一直循环乱码的现象。经过检查发现是由于在把三句代码转换为四句时,其对应后面的跳转语句地址也要随之改变,由JRZ 202E变为JRZ 202F。改正之后,出现了正确结果。
2. 在完成思考题二时,我们先由汇编语言的思想编写好程序,而后按照附录里的语句功能表再进行修正,发现与已学的汇编语言还是有一定的差距。比如跳转语句,此处我们运用的是利用进位符号位CF,与汇编语言中的习惯相反,有进位借位时为0,反之为1.开始由于写反了而总是得不到正确结果,经过改正,最终达到实验要求。
3. 在完成思考题三时,主要就是对于调用语句的运用和主程序子程序的格式上的掌握,程序编写方面由于输入的时候语句输入有误,重复MVRD R1,0020,因而后来的语句均与设计时的语句地址相差2,其他并未出现错误。
展开阅读全文