您好,欢迎访问三七文档
指令系统实验报告班级姓名学号日期一、实验目的:1、学习和了解实验平台十六位机监控命令的用法;2、学习和了解实验平台十六位机的指令系统;3、学习简单的实验平台十六位机汇编程序设计二、实验内容:1、使用监控程序R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储器内容;2、使用A命令写一小段汇编程序,G命令运行程序,T或P命令单步运行并观察程序单步执行情况。三、教学计算机的基本指令系统1、运算器有16个通用寄存器R0~R15。其中R4为16位的堆栈指针SP,R5用作16位程序计数器PC。2、有2个串行口的入出端口为80,81,82,83,其中80和82是数据寄存器地址,81和83是控制与状态寄存器的地址。3、教学计算机的基本指令系统见表1四、实验步骤1、关闭电源,将实验板上的16位机COM口与PC机的串口相连;2、接通电源,在PC机上运行PCEC16.EXE文件;3、设置控制开关为连续状态;3、按一下“RESET”按键,再按一下“START”按键,屏幕上显示相应的初始信息;4、用R命令查看寄存器内容或修改寄存器的内容,显示寄存器内容用R↓;修改寄存器内容用R寄存器名称↓;5、D命令显示存储器内容,D地址;6、E命令修改存储器内容,E地址。可连续修改多个单元内容,之间用空格分隔;7、用A命令键入汇编程序,A地址;8、G命令运行程序,G地址;9、用P或T命令,单步执行,观察执行结果表1教学计算机的基本指令系统五、编写程序(以下两个程序任选其一)1、在屏幕上循环显示95个可打印字符2、从键盘输入一个4位16进制数到寄存器中,把它以二进制代码形式显示到屏幕上。可考虑加上相应的检错功能,参考流程图如下。指令格式汇编语句操作数个数CZVS指令分组功能说明00000000DRSRADDDR,SR2*****ADR←DR+SR00000001DRSRSUBDR,SR2*****ADR←DR-SR00000010DRSRANDDR,SR2*****ADR←DRandSR00000011DRSRCMPDR,SR2*****ADR-SR00000100DRSRXORDR,SR2*****ADR←DRxorSR00000101DRSRTESTDR,SR2*****ADRandSR00000110DRSRORDR,SR2*****ADR←DRorSR00000111DRSRMVRRDR,SR2••••ADR←SR00001000DR0000DECDR1*****ADR←DR-100001001DR0000INCDR1*****ADR←DR+100001010DR0000SHLDR1*•••ADR,C←DR*200001011DR0000SHRDR1*•••ADR,C←DR/201000001OFFSETJRADR1••••A无条件跳转01000100OFFSETJRCADR1••••AC=1时跳转01000101OFFSETJRNCADR1••••AC=0时跳转01000110OFFSETJRZADR1••••AZ=1时跳转01000111OFFSETJRNZADR1••••AZ=0时跳转100000000000000JMPAADR1••••B无条件跳到ADR(16位)10000001DRSRLDRRDR,[SR]2••••BDR←[SR]10000010I/OPORTINI/OPORT1••••BR0←[I/OPORT]10000011DRSRSTRR[DR],SR2••••B[DR]←SR1000010000000000PSHF0••••BFLAG入栈100001010000SRPUSHSR1••••BSR入栈10000110I/OPORTOUTI/OPORT1••••B[I/OPORT]←R010000111DRPOPDR1••••B出栈到DR00001000DR0000MVRDDR,DATA2••••BDR←DATA(16位)1000110000000000POPF1••••BFLAG←出栈1000111100000000RET1••••B子程序返回1100111000000000CALAADR1••••D调用子程序ADR(16位)六、实验过程中遇到的主要问题七、实验后的心得体会用不同的寄存器为程序设置常量和变量初值有键盘输入接收输入并显示,清R0高位字节为16进制数字符拒绝输入并删除屏幕上的显示转换成二进制码并归并到R1中已有4个输入字符R1左移一位,依据C的值输出字符1或字符0输出已达16位结束开始是否否是否是否是输出回车、换符行
本文标题:指令系统实验报告
链接地址:https://www.777doc.com/doc-6210657 .html