计算机组成原理实验
2015-05-18 22:47
741 查看
该文仅供参考...
实验一:监控程序与汇编实验
实验控制开关:00110
实验要求:从键盘输入一个数字,则计算该值到10的累加。
实验三:存储器扩展实验
实验控制开关:00110
实验要求:从键盘上输入一个0-9的数字,将从该数字开始到F的所有数据存储到扩展之后的5000开始的EEPROM存储单元中。
基于上面的问题,完成输入数字到F的累加,并将累加和存储在存储‘F’的后续单元中
实验四:中断实验
实验控制开关:00010
实验要求:
a.主程序循环显示字母‘M‘,如果捕捉到中断源1的时候在屏幕循环显示数字1;捕捉到中断源2的时候在屏幕上循环显示数字‘2’;捕捉到中断源3的时候在屏幕上循环显示数字‘3‘;
b.需要实现在中断显示的过程中,如果按下任意按键则中断返回上一级程序继续运行;
c.实验以优先级为主要依据的嵌套;
实验一:监控程序与汇编实验
实验控制开关:00110
实验要求:从键盘输入一个数字,则计算该值到10的累加。
>a 2000 in 81 shr r0 shr r0 jrnc 2000 in 80 mvrd r1,ff30 mvrd r2,000a sub r0,r1 //将r0中存储的数字的ascii码转化为数字 mvrr r3,r0 inc r0 //r0自加一 add r3,r0 //将r0累加到r3 cmp r0,r2 jrnz 200B ret
实验三:存储器扩展实验
实验控制开关:00110
实验要求:从键盘上输入一个0-9的数字,将从该数字开始到F的所有数据存储到扩展之后的5000开始的EEPROM存储单元中。
>a 2000 in 81 shr r0 shr r0 jrnc 2000 in 80 mvrd r1,ff30 mvrd r2,5000 mvrd r3,000f sub r0,r1 strr [r2],r0 //将r0中的数据存入地址为r2的存储单元中 mvrd r9,0000 //由于EEROM芯片存储速度慢,所以设置以下的循环以确保数据能够写入EEROM中 mvrd r10,0fff inc r9 cmp r9,r10 jrnz (inc r9) //(inc r9)为上面的inc r9语句对应的地址 inc r0 inc r2 strr [r2],r0 cmp r0,r3 jrnz (mvrd r9,0000) //(mvrd r9,0000)为上面对应语句的位置
基于上面的问题,完成输入数字到F的累加,并将累加和存储在存储‘F’的后续单元中
>a 2000 in 81 shr r0 shr r0 jrnc 2000 in 80 out 80 mvrd r1,ff30 mvrd r2,5000 mvrd r3,000f sub r0,r1 mvrr r1,r0 //将r0存入r1中,r1将作为累加的结果 strr [r2],r0 mvrd r9,0000 mvrd r10,0fff inc r9 cmp r9,r10 jrnz (inc r9) //(inc r9)为上面对应语句的地址 inc r0 inc r2 add r1,r0 //将累加的结果存入r1中 strr [r2],r0 cmp r0,r3 jrnz (mvrd r9,0000) //(mvrd r9,0000)为上面对应语句的地址 inc r2 strr [r2],r1 ret
实验四:中断实验
实验控制开关:00010
实验要求:
a.主程序循环显示字母‘M‘,如果捕捉到中断源1的时候在屏幕循环显示数字1;捕捉到中断源2的时候在屏幕上循环显示数字‘2’;捕捉到中断源3的时候在屏幕上循环显示数字‘3‘;
b.需要实现在中断显示的过程中,如果按下任意按键则中断返回上一级程序继续运行;
c.实验以优先级为主要依据的嵌套;
>e 2000 6e00 //6e00为EI的机械码,表示开中断 >a 2001 mvrd r0,004D cala 2200 //执行在2200的子程序 该子程序用于输出字符 mvrd r0,4000 dec r0 jrnz (dec r0) //(dec r0)为上面对应语句的地址 jr 2001 //跳到2001循环执行主程序 ret >a 2404 //右边的中断开关的编程地址2404 jr 2420 //跳转到2420 我们将在其中写入中断代码 >a 2420 push r0 push r3 mvrd r3,0031 jr 2450 >a 2408 //中间的中断开关的编程地址2408 jr 2430 >a 2430 push r0 push r3 mvrd r3,0032 jr 2450 >a 240c //左边的中断开关的编程地址240c jr 2440 >a 2440 push r0 push r3 mvrd r3,0033 jr 2450 >a 2450 //三个子程序共用代码段 mvrr r0,r3 cala 2200 out 80 mvrd r0,4000 in 81 shr r0 shr r0 jrnc (mvrr r0,r3) //(mvrr r0,r3)为上面对应语句的地址 pop r0 >e (pop r0) //(pop r0)为上面对应语句的地址 EF00 //EF00为关中断IRET的机械码
相关文章推荐
- 计算机组成原理实验:LED显示实验
- 山东大学计算机组成原理整机实验
- 计算机组成原理 实验1 Cache模拟器的实现
- 中山大学计算机组成原理多周期CPU实验
- 计算机组成原理实验二:RAM实验
- 计算机组成原理实验四:时序系统
- 计算机组成原理实验三:二进制补码加法器
- [计算机组成原理][实验十.R-I-J型指令CPU设计实验总结]
- [Other]计算机组成原理分解实验:实验一 基本逻辑门逻辑实验
- 计算机组成原理实验二:四位补码运算器
- [置顶] 计算机组成原理实验:乘法实现
- [Other]计算机组成原理分解实验:实验二 RAM实验
- [Other]计算机组成原理分解实验:实验三 二进制补码加法器
- 【计算机组成原理】用MARS做实验
- 用ModelSim、Mars和Verilog做计算机组成原理CPU实验注意事项
- 计算机组成原理第二版(唐朔飞)5个实验
- 计算机组成原理 实验一 VHDL BCD码
- 计算机组成原理实验三:二进制补码加法器
- 山东大学软件学院计算机组成原理实验二
- 计算机组成原理 - 实验报告