微机原理课程设计

来源:百度知道 编辑:UC知道 时间:2024/05/23 10:33:45
问题如下:在键盘输入1—9999D的十进制数,计算从1到该数的所有质数,并显示输出(十进制数)。急求,谢谢。

由于有两年多的时间没有看微机原理的书了,所以具体的语句已经忘记,但这个设计的原理我还是记得的,所以只能将原理告诉楼主,请楼主谅解.
将数据"1"放进寄存器R1
将数据"1"放进寄存器R2
将R1的数据放进R3
然后将寄存器R3的数据先做除法,先除2取余.若余数为零,R2数据加1返回进行下一循环.
若余数不为0,将R1的数据再放进R3,那就将R3的数据除3取余,若余数为零,R2数据加1返回进行下一循环.
若余数不为0,将R1的数据再放进R3,那就将R3的数据除5取余,若余数为零,R2数据加1返回进行下一循环.
若余数不为0,将R1数据输出,并且R1数据加1,R2数据加1.返回加以循环.
当R2的数据达到9999的时候跳出循环结束

一、设计题目及要求:
利用 8259A中断,实现对8253多种计数初值的设定: 1.在中断服务程序中设定8253的计数初值。
2.开关K1用于设定0.5秒方波的计数初值,K2用于设定1秒方波的计数初值,K3用于设定2秒方波的计数初值。
3.用8253的输出信号,控制一个发光二极管,以演示修改效果。
二、设计思想:
整体设计:
①利用8259A芯片设定IR1、IR2、IR3三个中断 ,分别用三个开关的高低电平触发中断。
②在三个终端的中断服务子程序里面为8253芯片通道0设定不同频率的方波计数初值,使得在触发不同中断时8253芯片产生周期为0.5秒、1,秒、2秒的方波。 ③将8253的输出端口与发光二极管连接,通过二极管的亮灭显示出8253内部方波的频率。
部分设计:
①8253芯片方式3初值确定:根据分频电路T(n)=T/2*公式以及0.5s、1s、2s方波的频率计算出初值分别为2580H、4B00H、9600H。
②8253芯片和8259芯片的片选方法:设定8259A和8253芯片的端口号分别为0FFE0H 、0FFE1H,以及0FFFCH—0FFFFH,使得在连接138译码器时,A连A2,B连A3,C连A4,T0连接8259A芯片的CS端,T7连接8253芯片的CS端。