当前位置:文档之家› 组成原理课程设计报告(浮点数加法器

组成原理课程设计报告(浮点数加法器

组成原理课程设计报告(浮点数加法器
组成原理课程设计报告(浮点数加法器

沈阳航空航天大学

课程设计报告

课程设计名称:计算机组成原理课程设计课程设计题目:浮点数加法器

院(系):计算机学院

专业:计算机科学与技术

班级:

学号:

姓名:

指导教师:

完成日期:

目录

第1章总体设计方案 (2)

1.1设计原理 (2)

1.2设计思路 (2)

1.3设计环境 (3)

1.3.1 硬件环境 (3)

1.3.2 EDA环境 (3)

第2章详细设计方案 (4)

2.1总体方案的设计与实现 (4)

2.2功能模块的设计与实现 (5)

2.2.1 原补转换模块的设计与实现 (5)

2.2.2 阶码选择模块的设计与实现 (7)

2.2.3 数值选择模块的设计与实现 (9)

2.2.4 数据移位模块的设计与实现 (11)

2.2.5 加法模块的设计与实现 (14)

2.3总电路仿真测试 (16)

第3章编程下载与硬件测试 (19)

3.1编程下载 (19)

3.2硬件测试及结果分析 (19)

参考文献 (21)

附录 (22)

第1章总体设计方案

1.1 设计原理

本次课程设计的题目为浮点数加法器的设计,使用Xilinx Foundation F3.1可编程器件开发工具软件,以及伟福COP2000试验箱实现目的设计。具体要求为必须用基本逻辑门实现,浮点数的长度固定。根据所学可知,浮点数共由两部分组成。第一部分是阶码,第二部分是数据。这两部分又分别分为两部分。阶码由阶符和数值组成,数据由数符和数字组成。

由于在计算机的存储和运算中,数据由补码表示。故首先应将输入的原码转化为补码。在此过程中,正数保持不变,负数则对除符号位以外的各位按位取反,再进行加1操作。然后对两数的阶码进行运算,决定移位的次数和结果的阶码。在移位时,对正数进行补0操作,对负数则进行补1操作。再对移位后的数据视为定点数进行相加运算。进而实现浮点数相加的功能。最后再将得到的结果转化为原码,进行输出。

1.2设计思路

按照课设题目要求及原理图,先设计出电路的具体模块图,浮点数加法器的设计共包含如下五个模块:

①原补转换模块

②阶码选择模块

③数值选择模块

④数据移位模块

⑤超前进位加法模块

在五个部分中分别设计实现相应功能的器件,包括二选一数据选择器等。在连接具体电路时配合门电路以达到预期效果。浮点数加法器的底层、顶层的设计都采用原理图设计输入方式,经编译、调试后形成zyks.bit文件并下载到XCV200可编程逻辑芯片中,经硬件测试验证设计的正确性。

1.3设计环境

1.3.1 硬件环境

?伟福COP2000型计算机组成原理实验仪

COP2000计算机组成原理实验系统由实验平台、开关电源、软件三大部分组成实验平台上有寄存器组R0-R3、运算单元、累加器A、暂存器B、直通/左移/

右移单元、地址寄存器、程序计数器、堆栈、中断源、输入/输出单元、存储器单元、微地址寄存器、指令寄存器、微程序控制器、组合逻辑控制器、扩展座、总线插孔区、微动开关/指示灯、逻辑笔、脉冲源、20个按键、字符式LCD、RS232口。系统在实验时即使不借助PC 机,也可实时监控数据流状态及正确与否, 实验系统的软硬件对用户的实验设计具有完全的开放特性,系统提供了微程序控制器和组合逻辑控制器两种控制器方式,系统还支持手动方式、联机方式、模拟方式三种工作方式,系统具备完善的寻址方式、指令系统和强大的模拟调试功能。

1.3.2 EDA环境

?Xilinx foundation f3.1设计软件

Xilinx foundation f3.1是Xilinx公司的可编程期间开发工具,该平台功能强大,主要用于百万逻辑门设计。该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。

设计入口工具用于接收各种图形或文字的设计输入,并最终生成网络表文件。设计实现工具用于将网络表转化为配置比特流,并下载到器件。设计验证工具用来对设计中的逻辑关系及输出结果进行检验,并分析各个时序限制的满足情况。

?COP2000集成调试软件

COP2000集成开发环境是为COP2000实验仪与PC机相连进行高层次实验的配套软件,它通过实验仪的串行接口和PC机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试FPGA实验等功能,该软件在Windows 下运行。

第2章详细设计方案

2.1 总体方案的设计与实现

本课设要求控制信号可以采用外部开关输入或用VHDL语言编写的控制器输出的控制信号,其他部分可以调用系统资源库中的器件;必须用基本的逻辑门实现,然后封装。通过设计和分析,将本次设计分为五个模块来实现。

原补转换模块用于整个过程中的原补转换。如将输入的原码转换为补码。

阶码选择模块用于选择结果的阶码。

数值选择模块用于选择需要移位的数据并将其传送给移位器。

数据移位模块用于将需要移位的数据进行移位并将其传送给加法器进行相加运算。

超前进位加法模块用于过程的各种计算。例如补码的相减和数据的相加。

本次实验逻辑层次分明,共分为六个层次,分别完成输入的原补转换,移位次数的计算,数据选择,数据移位,数据相加计算及最后结果的输出。其总体设计框图如图2.1所示。

图2.1 浮点数加法器整体设计框图

2.2功能模块的设计与实现

2.2.1 原补转换模块的设计与实现

2.2.1.1功能描述

由于在计算机内部数据的存储以及运算是以补码的方式进行,因此首先我们应将输入的原码转换为补码。对于正数(带符号位)来说,其原码、补码一致。对于负数(带符号位)来说,其反码为符号位不变,其余各位按位取反(即反码)后末位加1。故对原补转换模块来说,其功能为将输入的原码转化为补码。其输入为原始数据的原码,输出为供以后继运算的补码。

2.2.1.2电路图

正数的符号位为0,负数的符号位为1,故如将符号位与数据位进行异或运算,即可获得反码。而对于正数原码、反码、补码相同。而负数的补码则为反码加1,加1操作可由数据位的末位与上符号位产生,经由与门逐级传递进位。并且由于正数的符号位为0,该逻辑对正数无影响。其电路图如图2.2所示。

图2.2 原补转换电路

封装图如图2.3所示。

图2.3 原补转换芯片封装外观图

2.2.1.3功能仿真

测试数据如表2.1所示。

图2.4 原补转换电路测试图

仿真图说明:

图2.4中,红线所示数据输入为1,10010111010,其真实输出为1,01101000110。蓝线所示数据输入为0,00110110100,其真实输出为0,00110110100。从仿真结果分析,对于给定的例子,其输出与预想的输出完全一致,说明电路的实现符合设计要求。

2.2.2 阶码选择模块的设计与实现

2.2.2.1功能描述

对于浮点数来说,在运算时需要进行对阶操作,然后选择较大的阶码作为输出结果的阶码,并且对阶码较小的数字的补码进行移位操作。故阶码选择模块的输入与输出均为阶码的补码。其功能为对阶码进行选择。

2.2.2.2电路图

在阶码选择电路中,我们采用了二选一数据选择器。它包括一个控制端S0,两个数据输入端D0,D1及一个数据输出端O。其真值表如表2.2:

表2.2 二选一数据选择器真值表

由真值表可看出。当S0为0时,输出为D0,S0为1时,输出为D1。故可将两阶码相减之后产生的符号位作为S0的输入信号,被减数的阶码与D0相连,件数的阶码与D1相连,这样就可以实现选择输出。其电路图如图2.5所示。

图2.5 补码选择电路

封装图如图2.6所示。

图2.6 补码选择电路封装效果图

2.2.2.3功能仿真

表2.3 补码选择电路测试数据

测试数据如表2.3所示。

图2.7 补码选择电路测试图

仿真图说明:

图2.7中,红线所示数据输入C0IN为1,阶码1为1010,阶码2为1100,其真实输出1100。蓝线所示数据输入COIN为0,阶码1为0110,阶码2为0011,其真实输出为0110。从仿真结果分析,对于给定的例子,其输出与预想的输出完全一致,说明电路的实现符合设计要求。

2.2.3 数值选择模块的设计与实现

2.2.

3.1功能描述

在对阶过程结束后,需要对阶码较小的数字的补码进行移位操作。这时便需要对输入的两个数据进行选择,然后再进行移位和相加等操作。故数值选择模块的输入与输出均为数值的补码。其功能为对数值进行选择和分流输出。

2.2.

3.2电路图

在数值选择电路中,我们同样采用了二选一数据选择器。但此时,输出由原来的4位更改为了8位,即输入的两组数值均要进行输出。其中,高四位为需要进行移位的数据,低四位为不需要进行移位的数据。此时的COIN(与数据选择器的控制端S0相连)仍为两阶码相减之后产生的符号位。被减数连至A23-A20,减数连至A13-A10。其电路图如图2.8所示。

图2.8 数值选择器电路图

封装图如图2.9所示。

图2.9 数值选择电路封装效果图2.2.3.3功能仿真

测试数据如表2.4所示。

图2.10 数值选择电路测试图

仿真图说明:

图2.10中,红线所示数据输入C0IN为1,数值1为1010,数值2为1100,其真实输出11001010。蓝线所示数据输入COIN为0,数值1为0110,数值2为0011,其真实输出为01100011。从仿真结果分析,对于给定的例子,其输出与预想的输出完全一致,说明电路的实现符合设计要求。

2.2.4 数据移位模块的设计与实现

2.2.4.1功能描述

经过对阶过程与数据选择过程后,我们得到了移位的次数和待移位的数据,接下来则需要用数据移位模块对数据进行移位操作。故数据移位模块的输入为待移位的数据(补码)与移位次数(原码),输出为移位后的数据(补码)。其功能为对数据进行移位和输出。

2.2.4.2电路图

根据计算机中数据存储的特点可知S2,S1,S0的位权分别为4,2,1。即若S2为1,数据需右移四位,S1为1,数据需右移两位,S0为1,数据需右移一位。另根据数据补位的原则可知,如原数据为正数则补0,为负数则补1。故当S0为控制信号时,可在相邻两位间用二选一数据选择器相连,当S0为1时输出高位,S0为0时输出低位。本级的输出用以作为当S1为控制信号时的输入。当S1为控制信号时,每隔一位进行选择。同理S2为控制信号时,每隔三位进行选择。而对于补位来说,则由符号位与数据位进行数据选择得到。S0为控制信号时符号位仅与最高位相与,S1为控制信号时符号位与最高两位相与,S3时则为最高四位。S0作为控制信号时的输出为S1作为控制信号时的输入,S1为控制信号的输出为S2是控制信号时的输出。最后的输出仅有数据位,不含符号位。其电路如图2.11

所示。

图2.11 数据移位器电路图

封装图如图2.12所示。

图2.12 数值移位电路封装效果图

2.2.4.3功能仿真

测试数据如表2.5所示。

图2.13 数据移位电路测试图

仿真图说明:

图2.13中,红线所示数据,输入S2,S1,S0为010,数值为0,11010001011,其真实输出为00110100010。对于蓝线所示数据,输入S2,S1,S0为101,数值为1,00101110011,其真实输出为11111001011。从仿真结果分析,对于给定的例子,其输出与预想的输出完全一致,说明电路的实现符合设计要求。

2.2.5 加法模块的设计与实现

2.2.5.1功能描述

在上述模块全部运行结束后,需要将得到的移位过的数据进行相加得到最终的结果。故加法模块的输入为数据移位器输出的一组移位后的数据已经数据选择器输出的一组不移位的数据。输出为相加之后的数据。其功能是实现两个数的超前进位加法运算。

2.2.5.2电路图

设二进制加法器第i位为A

i ,B

i

,输出为S

i

,进位输入为C

i

,进位输出为C

i+1

则有:S

i =A

i

⊕B

i

⊕C

i

,C

i+1

=A

i

*B

i

+A

i

*C

i

+ B

i

*C

i

=A

i

*B

i

+(Ai+Bi)*C

i

。令G

i

=A

i

*B

i

,P

i

= A

i

+B

i

则C

i+1= G

i

+ P

i

*C

i

当A

i

和B

i

都为1时,G

i

=1,产生进位C

i+1

=1。当A

i

和B

i

有一个为

1时,P

i = 1,传递进位C

i+1

= C

i

。因此G

i

定义为进位产生信号,P

i

定义为进位传递

信号。G

i 的优先级比P

i

高,也就是说:当G

i

= 1时无条件产生进位,而不管C

i

多少;当G

i =0而P

i

=1时,进位输出为C

i

,跟C

i

之前的逻辑有关。

设4位加数和被加数为A和B,进位输入为C

in ,进位输出为C

out

,对于第i位的

进位产生G

i =A

i

·B

i

,进位传递P

i

=A

i

+B

i

,i=0,1,2,3

于是对于各级进位输出,递归的展开C

i

有:

C 0=C

in

C 1=G

+P

·C

C 2=G

1

+P

1

·C

1

=G

1

+P

1

·G0+P

1

·P

·C

C 3=G

2

+P

2

·C

2

=G

2

+P

2

·G

1

+P

2

·P

1

·G

+P

2

·P

1

·P

·C

C 4=G

3

+P

3

·C

3

=G

3

+P

3

·G

2

+P

3

·P

2

·G

1

+P

3

·P

2

·P

1

·G

+P

3

·P

2

·P

1

·P

·C

C out=C 4

由此可以看出,各级的进位彼此独立产生,只与输入数据和C

in

有关,将各级间的进位级联传播给去掉了,因此减小了进位产生的延迟。故其电路图如图2.14所示。

图2.14 4位超前进位加法器电路图封装图如图2.15所示。

图2.15 4位超前进位加法器封装效果图

2.2.5.3功能仿真

测试数据如表2.6所示。

图2.16 加法电路测试图

仿真图说明:

图2.16中,红线所示数据,输入C0为1,数值A3-A0为0101,B3-B0为1001,其真实输出为1111。对于蓝线所示数据,输入C0为1为0,数值A3-A0为1011,B3-B0为1001,其真实输出为1111。从仿真结果分析,对于给定的例子,其输出与预想的输出完全一致,说明电路的实现符合设计要求。

2.3 总电路仿真测试

仿真测试试主要验证设计电路逻辑功能、时序的正确性,本次设计为浮点数加法器,设计完成主要采用功能仿真方法对设计的电路进行仿真从而验证其电路功能的正确性。

(1)建立仿真波形文件及仿真信号选择

功能仿真时,首先建立仿真波形文件,数据输入AJ3-AJ0、AS11-AS0、BJ3-BJ0、BS11-BS0,结果输出为OJ3-OJ1、OS11-OS0。

(2)功能仿真结果与分析

图2.17 总电路仿真波形

图2.18 总电路输出结果

仿真图说明:

如图2.17、2.18从波形可以清楚的看出输入和输出结果,在本次测试中输入的两个数为分别为0,010,0,01101011001与1,011,1,00011010100。从图2.17、2.18可以看到输出结果为0,010,0,01101010010,经过对比正确无误,即说明总的电路设计成功,符合课设题目的基本要求。

第3章编程下载与硬件测试

3.1 编程下载

在编译完成后,利用COP2000仿真软件的编程下载功能,将得到的zyks.bit 文件下载到XCV200实验板的XCV200可编程逻辑芯片中。

3.2 硬件测试及结果分析

利用XCV200实验板进行硬件功能测试。浮点数加法器的全部输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。

表3.1 XCV200实验板信号对应关系

计算机组成原理课程设计(微程序)报告

微程序控制器的设计与实现

目录 1设计目的 (3) 2设计内容 (3) 3具体要求 (3) 4设计方案 (3) 5 调试过程 (11) 6 心得体会 (12)

微程序控制器的设计与实现 一、设计目的 1)巩固和深刻理解“计算机组成原理”课程所讲解的原 理,加深对计算机各模块协同工作的认识 2)掌握微程序设计的思想和具体流程、操作方法。 3)培养学生独立工作和创新思维的能力,取得设计与调 试的实践经验。 4)尝试利用编程实现微程序指令的识别和解释的工作 流程 二、设计内容 按照要求设计一指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。 三、设计要求 1)仔细复习所学过的理论知识,掌握微程序设计的思 想,并根据掌握的理论写出要设计的指令系统的微程 序流程。指令系统至少要包括六条指令,具有上述功 能和寻址方式。 2)根据微操作流程及给定的微指令格式写出相应的微 程序 3)将所设计的微程序在虚拟环境中运行调试程序,并给 出测试思路和具体程序段 4)尝试用C或者Java语言实现所设计的指令系统的加 载、识别和解释功能。 5)撰写课程设计报告。 四、设计方案 1)设计思路 按照要求设计指令系统,该指令系统能够实现数据传送,进行加、减运算和无条件转移,具有累加器寻址、寄存器寻

址、寄存器间接寻址、存储器直接寻址、立即数寻址等五种寻址方式。从而可以想到如下指令:24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR 和EMRD决定是将DBUS数据写到EM中,还是 从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR 和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT 里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 CN:决定运算器是否带进位移位,CN=1带进位,CN=0不带进位。 FEN:将标志位存入ALU内部的标志寄存器。 X2:X1:X0: X2、X1、X0三位组合来译码选择将数据送到DBUS上的寄存器。具体如下: X2 X1 X0 输出寄存器 0 0 0 IN_OE 外部输入门 0 0 1 IA_OE 中断向量 0 1 0 ST_OE 堆栈寄存器 0 1 1 PC_OE PC寄存器

计算机组成原理实验报告

福建农林大学计算机与信息学院信息工程类实验报告系:计算机科学与技术专业:计算机科学与技术年级: 09级 姓名:张文绮学号: 091150022 实验课程:计算机组成原理 实验室号:___田405 实验设备号: 43 实验时间:2010.12.19 指导教师签字:成绩: 实验一算术逻辑运算实验 1.实验目的和要求 1. 熟悉简单运算器的数据传送通路; 2. 验证4位运算功能发生器功能(74LS181)的组合功能。 2.实验原理 实验中所用到的运算器数据通路如图1-1所示。其中运算器由两片74181

以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关INPUT DEVICE用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相连,数据显示灯“BUS UNIT”已和数据总线相连,用来显示数据总线内容。 图1-2中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至W/R UNIT的相应时序信号引出端,因此,在进行实验时,只需将W/R UNIT 的T4接至STATE UNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3,S2,S1,S0,Cn,LDDR1,LDDR2,ALU-B,SW-B各电平控制信号用SWITCH UNIT中的二进制数据开关来模拟,其中Cn,ALU-B,SW-B为低电平控制有效,LDDR1,LDDR2为高电平有效。 3.主要仪器设备(实验用的软硬件环境) ZYE1603B计算机组成原理教学实验系统一台,排线若干。 4.操作方法与实验步骤

教学管理系统的设计与实现(数据库原理课程设计)

教学管理系统的设计与实现(数据库原理课程 设计)

1 引言 为方便对学校日常工作进行高效的管理,设计此数据库以提高学校的管理效率。随着现代科技的高速发展,设备和管理的现代化,在实际工作中如何提高工作效率成为一个很重要的问题。而建立教学管理信息系统是一个很好的解决办法。 1.1课题背景 随着信息技术的飞速发展,信息化的大环境给各成人高校提出了实现校际互联,国际互联,实现静态资源共享,动态信息发布的要求[1];信息化对学生个人提出了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进行重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径. 校园网信息系统建设的重要性越来越为成人高校所重视。 1.2课题意义 利用计算机支持教学高效率,完成教学管理的日常事务,是适应现代教学制度要求、推动教学管理走向科学化、规范化的必要条件;而教学管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行教学管理工作,不仅能够保证各项准确无误、快速输出,而且还可以利用计算机对有关教学的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点。[2]

例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高员工工资管理的效率,也是教学的科学化、正规化管理,与世界接轨的软件。[3] 在软件开发的过程中,随着面向对象程序设计和数据库系统的成熟,数计成为软件开发的核心,程序的设计要服从数据,因此教学管理系统的数据库设计尤其重要。本文主要介绍教学管理系统的数据库方面的设计,从需求分析到数据库的运行与维护都进行详细的叙述。 2 系统分析 2.1 需求分析 1.需求分析的任务 需求分析的任务是调查应用领域,对应用领域中的信息要求和操作要求进行详细分析,形成需求分析说明书。重点是调查,收集与分析用户在数据管理中的信息要求,处理要求,数据的安全性与完整性要求。 为了完成需求分析的任务,要详细调查待开发的数据库应用部门的情况,了解原系统工作概况,分析用户的各种需求,在此基础上确定新系统的功能。[4]新系统必须考虑今后的扩充和改变,不能仅仅按当前应用需求来设计数据库。 2.需求分析的过程 1)调查教学组织机构的总体状况。本教学系统主要由教师管理系统,学生管理系统 以及教务管理系统。 2)熟悉各部门的业务活动状况。调查各部门的业务活动情况,对现行系统的功能和 和所需信息有一个明确的认识。包括了解各个部门输入和使用什么数据,如何加

编译原理课程设计

《编译原理》课程设计大纲 课程编号: 课程名称:编译原理/Compiler Principles 周数/学分:1周/1学分 先修课程:高级程序设计语言、汇编语言、离散数学、数据结构 适用专业:计算机科学与技术专业、软件工程专业 开课学院,系或教研室:计算机科学与技术学院 一、课程设计的目的 课程设计是对学生的一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常,设计题中的问题比平时的练习题要复杂,也更接近实际。编译原理这门课程安排的课程设计的目的是旨在要求学生进一步巩固课堂上所学的理论知识,深化理解和灵活掌握教学内容,选择合适的数据逻辑结构表示问题,然后编制算法和程序完成设计要求,从而进一步培养学生独立思考问题、分析问题、解决实际问题的动手能力。 要求学生在上机前应认真做好各种准备工作,熟悉机器的操作系统和语言的集成环境,独立完成算法编制和程序代码的编写。 设计时间: 开发工具: (1) DOS环境下使用Turbo C; (2) Windows环境下使用Visual C++ 。 (3) 其它熟悉语言。 二、课程设计的内容和要求 设计题一:算术表达式的语法分析及语义分析程序设计。 1.目的

通过设计、编制、调试一个算术表达式的语法及语义分析程序,加深对语法及语义分析原理的理解,并实现词法分析程序对单词序列的词 法检查和分析。 2.设计内容及要求: 算术表达式的文法: 〈无符号整数〉∷= 〈数字〉{〈数字〉} 〈标志符〉∷= 〈字母〉{〈字母〉|〈数字〉} 〈表达式〉∷= [+|-]〈项〉{〈加法运算符〉〈项〉} 〈项〉∷= 〈因子〉{〈乘法运算符〉〈因子〉} 〈因子〉∷= 〈标志符〉|〈无符号整数〉|‘(’〈表达式〉‘)’ 〈加法运算符〉∷= +|- 〈乘法运算符〉∷= *|/ (1) 分别选择递归下降法、算符优先分析法(或简单优 先法)完成以上任务,中间代码选用逆波兰式。 (2) 分别选择LL(1)、LR法完成以上任务,中间代码选 用四元式。 (3) 写出算术表达式的符合分析方法要求的文法,给出 分析方法的思想,完成分析程序设计。 (4) 编制好分析程序后,设计若干用例,上机测试并通 过所设计的分析程序。 设计题二:简单计算器的设计 1.目的 通过设计、编制、调试一个简单计算器程序,加深对语法及语 义分析原理的理解,并实现词法分析程序对单词序列的词法检 查和分析。 2.设计内容及要求 算术表达式的文法:

计算机组成原理课程设计报告

计算机组成原理课程设计报告 课程设计题目:计算机组成原理 专业名称:计算机科学与技术班级: 2013240202 关童:201324020217 张一轮:201324020218 孙吉阳:201324020219 张旭:201324020220 老师姓名:单博炜 2015年12月31日

第一章课程设计概述 1.1 课程设计的教学目的 本课程设计的教学目的是在掌握计算机系统组成及内部工作机制、理解计算机各功能部件工作原理的基础上,深入掌握数据信息流和控制信息流的流动过程,进一步加深计算机系统各模块间相互关系的认识 无条件转移),其指令格式如表1(前4位是操作码): 表1: IN为单字长(8位),含义是将数据开关8位数据输入到R0寄存器;ADD为双字长指令,第一字为操作码,第二字为操作数地址,其含义是将R0寄存器的内容与内存中以A为地址单元的数相加,结果放在

R0;STA为双字长指令,含义是将R0中的内容存储到以第二字A为地址内存单元中;OUT为双字长指令,含义是将内存中以第二字为地址的数据读到数据总线上,由数码管进行显示;JMP是双字长指令,执行该指令时,程序无条件转移到第二字所指定的内存单元地址。 为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了三个控制台操作微程序:存储器读操作”(KRD):拨动总清开关CLR后,当控制台开关SWB、SWA置为“00”时,按START 微动开关,可对RAM进行连续手动读操作;存储器写操作(KWE):拨动总清开关CLR后,当控制台开关SWB、SWA置为“01”时,按START微动开关,可对RAM进行连续手动写入;启动程序:拨动总清开关CLR后,当控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入第01号“取指”微指令,启动程序运行。这三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如表2:表2: C字段: 按照数据通路可画出机器指令的微程序流程图如图2所示,当拟定“取值”微指令时,该微指令的判

计算机组成原理实验报告

重庆理工大学 《计算机组成原理》 实验报告 学号 __11503080109____ 姓名 __张致远_________ 专业 __软件工程_______ 学院 _计算机科学与工程 二0一六年四月二十三实验一基本运算器实验报告

一、实验名称 基本运算器实验 二、完成学生:张致远班级115030801 学号11503080109 三、实验目的 1.了解运算器的组成结构。 2.掌握运算器的工作原理。 四、实验原理: 两片74LS181 芯片以并/串形式构成的8位字长的运算器。右方为低4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,使低4位运算产生的进位送进高4位。低位芯片的进位输入端Cn可与外来进位相连,高位芯片的进位输出到外部。 两个芯片的控制端S0~S3 和M 各自相连,其控制电平按表2.6-1。为进行双操作数运算,运算器的两个数据输入端分别由两个数据暂存器DR1、DR2(用锁存器74LS273 实现)来锁存数据。要将内总线上的数据锁存到DR1 或DR2 中,则锁存器74LS273 的控制端LDDR1 或LDDR2 须为高电平。当T4 脉冲来到的时候,总线上的数据就被锁存进DR1 或DR2 中了。 为控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(用74LS245 实现)。若要将运算结果输出到总线上,则要将三态门74LS245 的控制端ALU-B 置低电平。否则输出高阻态。数据输入单元(实验板上印有INPUT DEVICE)用以给出参与运算的数据。其中,输入开关经过一个三态门(74LS245)和内总线相连,该三态门的控制信号为SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。 总线数据显示灯(在BUS UNIT 单元中)已与内总线相连,用来显示内总线上的数据。控制信号中除T4 为脉冲信号,其它均为电平信号。 由于实验电路中的时序信号均已连至“W/R UNIT”单元中的相应时序信号引出端,因此,需要将“W/R UNIT”单元中的T4 接至“STATE UNIT”单元中的微动开关KK2 的输出端。在进行实验时,按动微动开关,即可获得实验所需的单脉冲。 S3、S2、 S1、S0 、Cn、M、LDDR1、LDDR2、ALU-B、SW-B 各电平控制信号则使用“SWITCHUNIT”单元中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B 为低电平有效,LDDR1、LDDR2 为高电平有效。 对于单总线数据通路,作实验时就要分时控制总线,即当向DR1、DR2 工作暂存器打入数据时,数据开关三态门打开,这时应保证运算器输出三态门关闭;同样,当运算器输出结果至总线时也应保证数据输入三态门是在关闭状态。 运算结果表

数据库原理课程设计报告

数据库原理课程设计报告

课程设计报告 数据库原理 系别信息学院 专业年级计算机科学与技术专业 0708班 学生姓名付艳艳 迟秀晶 米秋洋 任课教师李明 2010年5月5日

干部档案数据库系统设计报告 一、题目名称 干部档案数据库系统 二、题目简介 干部档案数据库应用系统是通用于各个公关企事业单位干部人员的基本信息的统计,是有关干部系统的登录、干部信息的增加、删除和修改、分类对干部信息进行查询和打印等各种信息的处理及应用。最终简单的实现对该单位干部信息资料的了解和查询,为本单位日常生活和对干部进行考核做了一定的设计,初步实现了干部档案系统的一般功能。 三、需求分析 (一)当今时代的现状及系统的实现工具 当今时代,人类经济高速发展,人们的生活发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域,使原本的旧的管理方法越来越不适应现在社会的发展,许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代化社会人们高度强烈的时间观念,干部档案数据库应用系统软件为档案办公室带来了极大地方便,我们所开发的这个系统所采用的是当前较为流行的编程软件Miscrosoft VisualFoxPro 6.0/8.0为后台结合SQL Server 2000数据库的实现语言,其功能在系统内部命令或直接对数据库进行操作完成。 干部档案材料的收集工作是干部档案工作的基础,是为利用工作积累信息的过程,是维护干部档案完整和真实直接关系其作用发挥的重要环节,因此必须下功夫、花大力气认真做好。 (二)建立健全收集归档制度,认真组织落实 从档案部门来说必须建立健全收集工作制度并严格执行,应该归档的材料认真收集归档。定期收集可以根据本单位的中心工作提出收集工作计划,对应收集的材料做到心中有数,积极主动抓重点、按计划逐项收集,这样可以避免因工作忙漏归、迟归现象。如表彰奖励材料、年终考核材料、工资普调材料等

编译原理课程设计报告_LL(1)分析过程模拟

课程设计(论文)任务书 软件学院学院软件工程专业07-1班 一、课程设计(论文)题目LL(1)分析过程模拟 二、课程设计(论文)工作自 2010 年 6 月 22日起至 2010 年 6月 28 日止。 三、课程设计(论文) 地点: 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)使学生掌握LL(1)模块的基本工作原理; (2)培养学生基本掌握LL(1)分析的基本思路和方法; (3)使学生掌握LL(1)的调试; (4)培养学生分析、解决问题的能力; (5)提高学生的科技论文写作能力。 2.课程设计的任务及要求 1)基本要求: (1)分析LL(1)模块的工作原理; (2)提出程序的设计方案; (3)对所设计程序进行调试。 2)创新要求: 在基本要求达到后,可进行创新设计,如改算法效率。 3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写课程设计论文 (2)论文包括目录、绪论、正文、小结、参考文献、附录等 (3)课程设计论文装订按学校的统一要求完成 4)答辩与评分标准: (1)完成原理分析:20分; (2)完成设计过程(含翻译):40分; (3)完成调试:20分;

(4)回答问题:20分。 5)参考文献: (1)张素琴,吕映芝,蒋维杜,戴桂兰.编译原理(第2版).清华大学出版社 (2)丁振凡.《Java语言实用教程》北京邮电大学出版社 6)课程设计进度安排 内容天数地点 构思及收集资料2图书馆 编程与调试4实验室 撰写论文1图书馆、实验室 学生签名: 2009 年6 月22 日 课程设计(论文)评审意见 (1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(20分):优()、良()、中()、一般()、差();(3)完成调试(20分):优()、良()、中()、一般()、差();(4)翻译能力(20分):优()、良()、中()、一般()、差();(5)回答问题(20分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否() 评阅人:职称: 年月日

计算机组成原理课程设计报告63979

课程设计报告 课程名称:计算机组成原理 题目名称:复杂模型机的设计与实现 专业名称:计算机科学 18 学生姓名:李佩霖 同组人:聂铭 指导老师:单博炜 完成时间:2014年12月29日至2014年12月31日 目录 第一章课程设计概述 1.1课程设计的教学目的 1.2课程设计任务和基本要求 第二章规定项目的实验验证 2.1任务分析以及解决方案 2.2设计原理 第三章指定应用项目的设计实现

第四章收获和体会 第一章课程设计概述 1.1 课程设计的教学目的 综合运用所学计算机组成原理知识,设计并实现较为完整的计算机。 1.2 课程设计任务和基本要求 在模型机上实现如下运算:从IN单元读入一个数据,根据读入数据的低四位值X,求对应X值的1+2+3+···的整数序列的累加和,X为序列的长度。 要求使用实验机上的复杂模型机设计实验上的数据格式和指令格式、数据通路、微程序流程图设计微程序,并通过手动和联机输入完成实验验证。 第二章规定项目的实验验证 2.1任务分析以及解决方案 考虑到实验任务为计算数的序列的累加和,所以实验过程应该为: 1.学习并掌握微指令的结构以及运算方式。 2根据实验机数据通路的原理框图在实验机上连接线路。 3手动和联机向实验机打入微程序,运行并验证。 2.2设计原理 如图1为模型机数据通路原理框图,图2为微程序流程图。 图1 图2 关于数据格式,模型机规定采用定点补码表示法表示数据,数据字长为8位,8位全部用来表示数据。 关于指令格式,模型机设计3大指令共15条,其中包括运算类指令、控制转移类指令、数据传送类指令。运算类指令包含3种,算术运算、逻辑运算、一位运算,设计有6条运算类指令,分别为:ADD、AND、INC、SUB、OR、RR,所有运算类指令均为单字节指令,寻址方式采用寄存器直接寻址。控制转移类指令有3条,分别为:HLT、JMP、BZC。数据传送类指令有:IN、OUT、MOV、LDI、LAD、STA。

计算机组成原理实验报告(运算器组成、存储器)

计算机组成原理实验报告 一、实验1 Quartus Ⅱ的使用 一.实验目的 掌握Quartus Ⅱ的基本使用方法。 了解74138(3:8)译码器、74244、74273的功能。 利用Quartus Ⅱ验证74138(3:8)译码器、74244、74273的功能。 二.实验任务 熟悉Quartus Ⅱ中的管理项目、输入原理图以及仿真的设计方法与流程。 新建项目,利用原理编辑方式输入74138、74244、74273的功能特性,依照其功能表分别进行仿真,验证这三种期间的功能。 三.74138、74244、74273的原理图与仿真图 1.74138的原理图与仿真图 74244的原理图与仿真图

1. 4.74273的原理图与仿真图、

实验2 运算器组成实验 一、实验目的 1.掌握算术逻辑运算单元(ALU)的工作原理。 2.熟悉简单运算器的数据传送通路。 3.验证4位运算器(74181)的组合功能。 4.按给定数据,完成几种指定的算术和逻辑运算。 二、实验电路 附录中的图示出了本实验所用的运算器数据通路图。8位字长的ALU由2片74181构成。2片74273构成两个操作数寄存器DR1和DR2,用来保存参与运算的数据。DR1接ALU的A数据输入端口,DR2接ALU的B数据输入端口,ALU的数据输出通过三态门74244发送到数据总线BUS7-BUS0上。参与运算的数据可通过一个三态门74244输入到数据总线上,并可送到DR1或DR2暂存。 图中尾巴上带粗短线标记的信号都是控制信号。除了T4是脉冲信号外,其他均为电位信号。nC0,nALU-BUS,nSW-BUS均为低电平有效。 三、实验任务 按所示实验电路,输入原理图,建立.bdf文件。 四.实验原理图及仿真图 给DR1存入01010101,给DR2存入10101010,然后利用ALU的直通功能,检查DR1、

《数据库原理课程设计》题目

《数据库原理课程设计》任务书 《数据库原理课程设计》是一门独立的实践课程,学分为1,单独记成绩。通过本课程设计,能使学生较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论和设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成简单的数据库应用系统的设计与实现。 一、设计内容 完成一个数据库应用系统的设计全过程,包括需求分析、数据库设计、数据库建立、数据输入、应用系统的设计和开发、用户界面的设计和实现、系统安装和调试等。 学生以2~3人为一设计小组,从课程设计题目中选择一个题目,要求每班中各组的题目都不相同。二、设计环境 操作系统:Windows XP/2003/Vista/Win7/Win8; DBMS:SQL Server或MySQL等; 开发工具:JA V A、JSP、C#等。 三、设计步骤 1、需求分析 业务流程分析和功能分析。 2、概念结构设计 生成基本E-R图。 3、逻辑结构设计 关系表设计(主键与完整性约束)、范式分析(至少要达到3NF)。 4、功能模块实现、集成及调试 应用系统功能通常根据实际目标设定,一般应具有基本的增、删、改、查功能。 编写实现系统功能的界面和代码。 5、报告编写。 四、报告内容 1、需求分析(功能分析、工作流图、数据流图、数据字典); 2、概念模型设计(E-R图); 3、逻辑设计(E-R模型转换为关系模式,指明所满足的范式并给出理由); 4、系统功能设计 5、功能模块实现(界面及源代码) 6、总结(设计过程中遇到的问题以及解决方法;课程学习及课程设计的体会)。 7、参考文献 五、报告格式 1、报告一律按A4纸打印,每人1份。 2、全班刻录在一张光盘上,每组一个文件夹,文件夹名为课程设计题目+(该组学生姓名),并在该文件夹中以每个同学的学号+姓名为名称建立子文件夹,子文件夹中是该同学的内容(包括:源代码、课程设计报告电子版)。 特别提示: 凡有抄袭现象一经发现,课程设计成绩均为不及格。

编译原理课程设计报告(一个完整的编译器)

编译原理程序设计报告 一个简单文法的编译器的设计与实现专业班级:计算机1406班 组长姓名:宋世波 组长学号: 20143753 指导教师:肖桐 2016年12月

设计分工 组长学号及姓名:宋世波20143753 分工:文法及数据结构设计 词法分析 语法分析(LL1) 基于DAG的中间代码优化 部分目标代码生成 组员1学号及姓名:黄润华20143740 分工:中间代码生成(LR0) 部分目标代码生成 组员2学号及姓名:孙何奇20143754 分工:符号表组织 部分目标代码生成

摘要 编译器是将便于人编写,阅读,维护的高级计算机语言翻译为计算机能解读、运行的低阶机器语言的程序。编译是从源代码(通常为高阶语言)到能直接被计算机或虚拟机执行的目标代码(通常为低阶语言或机器语言)的翻译过程。 一.编译器的概述 1.编译器的概念 编译器是将便于人编写,阅读,维护的高级计算机语言翻译为计算机能解读、运行的低阶机器语言的程序。编译器将原始程序作为输入,翻译产生使用目标语言的等价程序。源代码一般为高阶语言如Pascal、C++、Java 等,而目标语言则是汇编语言或目标机器的目标代码,有时也称作机器代码。 2.编译器的种类 编译器可以生成用来在与编译器本身所在的计算机和操作系统(平台)相同的环境下运行的目标代码,这种编译器又叫做“本地”编译器。另外,编译器也可以生成用来在其它平台上运行的目标代码,这种编译器又叫做交叉编译器。交叉编译器在生成新的硬件平台时非常有用。“源码到源码编译器”是指用一种高阶语言作为输入,输出也是高阶语言的编译器。例如: 自动并行化编译器经常采用一种高阶语言作为输入,转换其中的代码,并用并行代码注释对它进行注释(如OpenMP)或者用语

计算机组成原理课程设计报告完整版

计算机组成原理课程设计报告 班级:06计算机 6 班姓名:李凯学号:20063007 完成时间:2009年1月3日 一、课程设计目的 1.在实验机上设计实现机器指令及对应的微指令(微程序)并验证,从而进一步掌握微程序设计控制器的基本方法并了解指令系统与硬件结构的对应关系; 2.通过控制器的微程序设计,综合理解计算机组成原理课程的核心知识并进一步建立整机系统的概念; 3.培养综合实践及独立分析、解决问题的能力。 二、课程设计的任务 针对COP2000实验仪,从详细了解该模型机的指令/微指令系统入手,以实现乘法和除法运算功能为应用目标,在COP2000的集成开发环境下,设计全新的指令系统并编写对应的微程序;之后编写实现乘法和除法的程序进行设计的验证。 三、课程设计使用的设备(环境) 1.硬件 ●COP2000实验仪 ●PC机 2.软件 ●COP2000仿真软件 四、课程设计的具体内容(步骤) 1.详细了解并掌握COP 2000模型机的微程序控制器原理,通过综合实验来实现该模型机指令系统的特点: COP2000模型机包括了一个标准CPU所具备所有部件,这些部件包括:运算器ALU、

累加器A、工作寄存器W、左移门L、直通门D、右移门R、寄存器组R0-R3、程序计数器PC、地址寄存器MAR、堆栈寄存器ST、中断向量寄存器IA、输入端口IN、输出端口寄存器OUT、程序存储器EM、指令寄存器IR、微程序计数器uPC、微程序存储器uM,以及中断控制电路、跳转控制电路。其中运算器和中断控制电路以及跳转控制电路用CPLD来实现,其它电路都是用离散的数字电路组成。微程序控制部分也可以用组合逻辑控制来代替。 模型机为8位机,数据总线、地址总线都为8位,但其工作原理与16位机相同。相比而言8位机实验减少了烦琐的连线,但其原理却更容易被学生理解、吸收。 模型机的指令码为8位,根据指令类型的不同,可以有0到2个操作数。指令码的最低两位用来选择R0-R3寄存器,在微程序控制方式中,用指令码做为微地址来寻址微程序存储器,找到执行该指令的微程序。而在组合逻辑控制方式中,按时序用指令码产生相应的控制位。在本模型机中,一条指令最多分四个状态周期,一个状态周期为一个时钟脉冲,每个状态周期产生不同的控制逻辑,实现模型机的各种功能。模型机有24位控制位以控制寄存器的输入、输出,选择运算器的运算功能,存储器的读写。24位控制位分别介绍如下: XRD :外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。 EMWR:程序存储器EM写信号。 EMRD:程序存储器EM读信号。 PCOE:将程序计数器PC的值送到地址总线ABUS上。 EMEN:将程序存储器EM与数据总线DBUS接通,由EMWR和EMRD决定是将DBUS数据写到EM中,还是从EM读出数据送到DBUS。 IREN:将程序存储器EM读出的数据打入指令寄存器IR和微指令计数器uPC。 EINT:中断返回时清除中断响应和中断请求标志,便于下次中断。 ELP: PC打入允许,与指令寄存器的IR3、IR2位结合,控制程序跳转。 MAREN:将数据总线DBUS上数据打入地址寄存器MAR。 MAROE:将地址寄存器MAR的值送到地址总线ABUS上。 OUTEN:将数据总线DBUS上数据送到输出端口寄存器OUT里。 STEN:将数据总线DBUS上数据存入堆栈寄存器ST中。 RRD:读寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。 RWR:写寄存器组R0-R3,寄存器R?的选择由指令的最低两位决定。

数据库原理课程设计指导书

数据库原理课程设计指导书 课程名称:数据库原理课程设计 课程编号:40406051 课程类型:必修 学时:1周 学分:1 适用专业:计算机科学与技术、网络工程 编制人:数据库原理课程组 一、课程设计的目的和意义 《数据库原理课程设计》是实践性教案环节之一,是《数据库原理》课程的辅助教案课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教案内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库经管系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。 二、设计要求: 通过设计一个完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节——概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。集中安排1周进行课程设计,以小组为单位,一般2~3人为一组,组内自由分工协作。教师讲解数据库的设计方法以及布置题目,要求学生根据题目的需求描述,进行实际调研,提出完整的需求分析报告,建立概念模型、逻辑模型、物理模型,在物理模型中根据需要添加必要的约束、视图、触发器和存储过程等数据库对象,生成创建数据库的脚本,提出物理设计的文档,最后应用某种宿主语言完成主要功能设计和实现。 要求如下: 1、要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。 2、既要虚心接受老师的指导,又要充分发挥主观能动性。结合课题,独立思考,努力钻研,勤于实践,勇于创新。 3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。 4、课程设计期间,无故缺席按旷课处理;缺席时间达四分之一以上者,其成绩按不及格处理。 5、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。 6、小组成员之间,分工明确,但要保持联系畅通,密切合作,培养良好的互相帮助和团队协作精神。 三、课程设计选题的原则 课程设计题目以选用学生相对比较熟悉的业务模型为宜,要求通过本实践性教案环节,能较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论、设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成小型数据库的设计与实现。具体选题见附录。 四、课程设计的一般步骤 课程设计大体分五个阶段: 1、选题与搜集资料:根据分组,选题目,在小组内进行分工,进行系统调查,搜集资料。

(重庆理工大学计算机学院)编译原理课程设计报告

编译原理课程设计报告 实验名称编译原理课程设计 班级 学号 姓名 指导教师 实验成绩 2013 年06月

一、实验目的 通过设计、编写和调试,将正规式转换为不确定的有穷自动机,再将不确定的有穷自动机转换为与之等价的确定的有穷自动机,最后再将确定有穷自动机进行简化。 通过设计、编写和调试构造LR(0)项目集规范簇和LR分析表、对给定的符号串进行LR分析的程序,了解构造LR(0)分析表的步骤,对文法的要求,能够从文法G出发生成LR(0)分析表,并对给定的符号串进行分析。 二、实验内容 正规式——>NFA——>DFA——>MFA 1.正规式转化为不确定的有穷自动机 (1)目的与要求 通过设计、编写和调试将正规式转换为不确定的有穷自动机的程序,使学生了解Thompson算法,掌握转换过程中的相关概念和方法,NFA的表现形式可以是表格或图形。 (2)问题描述 任意给定一个正规式r(包括连接、或、闭包运算),根据Thompson算法设计一个程序,生成与该正规式等价的NFA N。 (3)算法描述 对于Σ上的每个正规式R,可以构造一个Σ上的NFA M,使得L(M)=L(R)。 步骤1:首先构造基本符号的有穷自动机。 步骤2:其次构造连接、或和闭包运算的有穷自动机。

(4)基本要求 算法实现的基本要求是: (1) 输入一个正规式r; (2) 输出与正规式r等价的NFA。(5)测试数据 输入正规式:(a|b)*(aa|bb)(a|b)* 得到与之等价的NFA N

(6)输出结果 2.不确定的有穷自动机的确定化 (1)目的与要求 通过设计、编写和调试将不确定的有穷自动机转换为与之等价的确定的有穷自动机的程序,使学生了解子集法,掌握转换过程中的相关概念和方法。DFA的表现形式可以是表格或图形。(2)问题描述 任意给定一个不确定的有穷自动机N,根据算法设计一个程序,将该NFA N变换为与之等价的DFA D。 (3)算法描述 用子集法将NFA转换成接受同样语言的DFA。 步骤一:对状态图进行改造 (1) 增加状态X,Y,使之成为新的唯一的初态和终态。从X引ε弧到原初态结点, 从原终态结 点引ε弧到Y结点。 (2) 对状态图进一步进行如下形式的改变

组成原理课程设计报告.

《计算机组成原理》 课 程 设 计 报 告 院系名称计算机科学与工程学院 班级 姓名 学号 指导教师

题目一 1. 问题描述 设计一个具有加法和直接寻址方式的模型机 (1)设计内容: 设计一台具有输入、输出、加法、存储和跳转功能的模型计算机,并写出工作程序和测试数据验证有设计的指令系统。 (2)设计要求: 所设计模型计算机的指令系统共包含五条机器指令:IN(输入)、OUT(输出)、ADD (加法)、STA(存数)、JMP(无条件转移)。STA和JMP为直接寻址。 2. 题目分析及设计原理 通过IN单元输入数据送R0寄存器,然后寄存器和自身相加,再将结果保存到存储器并送OUT单元显示出来,最后无条件跳转,又重复执行。 结合数据通路图设计指令。 数据通路图

注意读写逻辑控制信号的控制。读写控制逻辑如下: 3.指令设计及编码 模型机的指令系统及指令格式如下: 助记符机器指令码说明 IN RD,P XXXX XX RD p IN->RD ADD RD,RS,D XXXX RS RD RS+RD->RD STA M D,RD XXXX M RD D R0->E OUT P,RS XXXX RS XX P RS->LED JMP M D XXXX M XX D E->PC 指令格式为: 指令编码为:

;//************Start Of Main Memory Data******// $P 00 20 ;START:IN R0 从IN单元读入数据送R0 $P 01 00 ;ADD R0,RO 和自身相加,结果送 $P 02 10 ;STA 将结果存入主存 $P 03 80 ;OUT R0 输出结果 $P 04 E0 ;JMP START 跳转到00单元 $P 05 00 $P 06 50 ;HLT 停机 ;//************End Of Main Memory Data******// 4.微指令设计及编码 微指令格式 23 22 21 20 10 18-15 14-12 11-9 8-6 5-0 M23 CN WR RD IOM S3-S0 A字段B字段C字段MA5-MA0 微指令数据流程图

计算机组成原理实验报告

计算机组成原理实验报告 ——微程序控制器实验 一.实验目的: 1.能瞧懂教学计算机(TH-union)已经设计好并正常运行的数条基本指令的功能、格式及执 行流程。并可以自己设计几条指令,并理解其功能,格式及执行流程,在教学计算机上实现。 2.深入理解计算机微程序控制器的功能与组成原理 3.深入学习计算机各类典型指令的执行流程 4.对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念 5.学习微程序控制器的设计过程与相关技术 二.实验原理: 微程序控制器主要由控制存储器、微指令寄存器与地址转移逻辑三大部分组成。 其工作原理分为: 1、将程序与数据通过输入设备送入存储器; 2、启动运行后从存储器中取出程序指令送到控制器去识别,分析该指令要求什么事; 3、控制器根据指令的含义发出相应的命令(如加法、减法),将存储单元中存放的操作数据取出送往运算器进行运算,再把运算结果送回存储器指定的单元中; 4、运算任务完成后,就可以根据指令将结果通过输出设备输出 三.微指令格式: 其中高八位为下地址字段、其余各位为控制字段、 1)微地址形成逻辑 TH—UNION 教学机利用器件形成下一条微指令在控制器存储器的地址、 下地址的形成由下地址字段及控制字段中的CI3—SCC控制、当为顺序执行时,下地址字段不起作用、下地址为当前微指令地址加1;当为转移指令(CI3—0=0011)时,由控制信号SCC 提供转移条件,由下地址字段提供转移地址、 2)控制字段 控制字段用以向各部件发送控制信号,使各部件能协调工作。 控制字段中各控制信号有如下几类: ①对运算器部件为了完成数据运算与传送功能,微指令向其提供了24位的控制信号,包括:4位的A、B口地址,用于选择读写的通用积存器3组3位的控制码I8-I6、 I5-I3、I2-I6,用于选择结果处置方案、运算功能、数据来源。 3组共7位控制信号控制配合的两片GAL20V8 3位SST,用于控制记忆的状态标志位 2位SCI,用于控制产生运算器低位的进位输入信号 2位SSH,用于控制产生运算器最高,最地位(与积存器)移位输入信号 ②对内存储器I/O与接口部件,控制器主要向它们提供读写操作用到的全部控制信号,共3位,即MRW

数据库原理课程设计报告报告实验创建存储过程与触发器

存储过程与触发器实验日期和时间: 2016 年 5 月13 日、星 期 五第节 实验室:DJ2-信息管理实验室 班级:学号:姓名: 实验环境: 1.硬件:笔记本电脑 2.软件:SQL Server 2012 实验原理: 存储过程概念:存储过程是事先编好的,存储在数据库中的一组被编译了的T-SQL命令集合,这些命令用来完成对数据库的指定操作。存储过程可以接受用户的输入参数、向客户端返回表格或标量结果和消息、调用数据定义语言(DDL)和数据操作语言(DML)语句,然后返回输入参数。 触发器概念:触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 实验任务: 此作业成绩得分根据你完成的任务的难度和数量评分,完成后在实验室给老师演示验收,课后提交电子版报告。如额外完成自拟题目应当事先将所拟题目提交给老师或在报告中明确标注题意。 假定有学校的图书馆管理信息系统,可以用于日常管理书库和同学们的借还书工作。 以下列出参考的库表情况: 根据管理的业务需求来分析,该管理信息系统的数据库应至少包括如下数据表:(打★号的是必须有的表) 1.★图书现有库存表。作用:记录图书的现有库存情况。至少包括:书号、书名、 作者、简介、类别、价格、出版社、出版日期、现有库存数量、最小库存量、库 存总量、库存位置等。 2.★读者信息表。作用:记录读者信息。至少包括:读者编号、证件类型、证件号 码、姓名、性别、职业(可填写教师、学生、教工、其它……)、所属单位、地址、 联系电话等。 3.★借书记录表。作用:记录借书情况,以及是否归还。至少包括:借阅ID(主键, 可设置为自动编号)、书号、读者编号、借阅数量、借阅日期、是否归还、管理员 编号……等。 4.★还书记录表。作用:记录还书情况。至少包括:还书ID(主键,可设置为自动 编号)、书号、读者编号、归还数量、归还日期、是否超期(超过假设45天为超 期)、超期天数、管理员编号……等。(附:为简化操作,续借可视为归还后再借)。 5.管理员信息表。作用:记录负责管理书库和借书还书工作的管理员信息。至少包 括:管理员编号、职工编号(在职工档案表中的职工编号)、用户名、密码、管理

编译原理课程设计报告

2011-2012学年第二学期 《编译原理》课程设计报告 学院:计算机科学与工程学院 班级: 学生姓名:学号: 成绩: 指导教师: 时间:2012年5 月

目录 一、课程设计的目的 ---------------------------------------------------------------- - 1 - 二、课堂实验及课程设计的内容 -------------------------------------------------- - 1 - 2.1、课堂实验内容-------------------------------------------------------------- - 1 - 2.2、课程设计内容-------------------------------------------------------------- - 1 - 三、visual studio 2008 简介------------------------------------------------------- - 2 - 四、问题分析及相关原理介绍 ----------------------------------------------------- - 3 - 4.1、实验部分问题分析及相关原理介绍 ---------------------------------- - 3 - 4.1.1、词法分析功能介绍及分析------------------------------------- - 3 - 4.1.2、语法分析功能介绍及分析------------------------------------- - 3 - 4.1.3、语义分析功能介绍及分析------------------------------------- - 4 - 4.2、课程设计部分问题分析及相关原理介绍 ---------------------------- - 5 - 4.2.1、编译程序介绍 ----------------------------------------------------- - 5 - 4.2.2、对所写编译程序的源语言的描述(C语言) -------------- - 6 - 4.2.3、各部分的功能介绍及分析 -------------------------------------- - 7 - 4.3、关键算法:单词的识别-------------------------------------------------- - 8 - 4.3.1、算法思想介绍 ----------------------------------------------------- - 8 - 4.3.2、算法功能及分析 -------------------------------------------------- - 8 - 五、设计思路及关键问题的解决方法 ------------------------------------------ - 10 - 5.1、编译系统------------------------------------------------------------------ - 10 - 5.1.1、设计思路 --------------------------------------------------------- - 10 - 5.2、词法分析器总控算法--------------------------------------------------- - 12 - 5.2.1、设计思路 --------------------------------------------------------- - 12 - 5.2.2、关键问题及其解决方法 --------------------------------------- - 13 - 六、结果及测试分析-------------------------------------------------------------- - 14 - 6.1、软件运行环境及限制--------------------------------------------------- - 14 - 6.2、测试数据说明------------------------------------------------------------ - 14 - 6.3、运行结果及功能说明--------------------------------------------------- - 16 - 6.4、测试及分析说明--------------------------------------------------------- - 16 - 七、总结及心得体会 --------------------------------------------------------------- - 17 - 7.1、设计过程------------------------------------------------------------------ - 17 - 7.2、困难与收获 ------------------------------------------------------------- - 17 - 八、参考文献 ------------------------------------------------------------------------ - 18 -

相关主题
文本预览
相关文档 最新文档