《数字万用表课程设计》课程报告

《数字万用表课程设计》课程报告
《数字万用表课程设计》课程报告

天津电子信息职业技术学院

《数字万用表课程设计》课程报告

论文题目:三位半数字万用表

姓名:陈星宇(02)

系别:网络技术系

专业:物联网应用技术

班级:物联S11-1

指导教师:王青

目录

一.课程设计的目的 (1)

二.设计题目和要求 (1)

三.总体方案 (1)

四.方案比较 (3)

五.基本原理 (4)

六.单元电路设计 (5)

6.2 AC/DC转换电路 (8)

6.3 电压、电流信号衰减电路 (8)

6.4 电阻测量电路 (9)

6.5 电容测量 (11)

八.所用元器件 (13)

九.设计心得和体会 (13)

十一.实验测得波形图 (15)

参考文献 (16)

三位半数字万用表

一.课程设计的目的

课程设计的主要目的,是通过电子技术的综合设计,熟悉一般电子电路综合设计过程、设计要求、完成的工作内容和具体的设计方法。通过设计也有助于复习、巩固以往的学习模电、数电内容,达到灵活应用的目的。在设计完成后,还要将设计的电路进行安装、调试以加强学生的动手能力。在此过程中培养从事设计工作的整体观念。

课程设计应强调以能力培养为主,在独立完成设计任务同时注意多方面能力的培养与提高,主要包括以下方面:

1、独立工作能力和创造力。

2、综合运用专业及基础知识,解决实际工程技术问题的能力。

3、查阅图书资料、产品手册和各种工具书的能力。

4、熟悉常用电子仪器操作使用和测试方法。

5、工程绘图能力。

6、写技术报告和编制技术资料的能力。

二.设计题目和要求

题目:设计3 1/2数字万用表

具体要求:

(一)根据题目,利用所学知识,通过上网或到图书馆查阅资料,设计 2-3个实现数字万用表的方案;只要求写出实现工作原理,画出电原理功能

框图,描述其功能。

说明:采用原理、方案、方法不限,可以自行设计。

(二)其中对将要实验方案3 1/2位数字万用表方案,须采用中小规模集成电路、MC14433A/D转换器等电路进行设计,写出已确定方案详细工

作原理,计算出参数。

(三)技术指标:

1、测量直流电压1999-0001V;199.9-0.1V;19.99-0.01V;1.999-

0.001V;测量交流电压1999-199V。

2、交、直流电流;

3、电阻、电容;

4、三位半数字显示。

三.总体方案

方案一:由MC14433A/D转换器构成的3 1/2位数字万用表

原理:该系统中将待测直流电压Vx加到MC14433芯片的3脚,经MC14433

完成A/D 转换后,通过CD4511七段锁存/译码/驱动器送到LED 显示,LED 位选是由MC14433的DS4-DS1经MC1413反向后提供,MC1403为MC144433提供基准电压。测交流时则需经AC-DC 转换。

原理框图:

方案二:由ICL7106构成的3 1/2为数字万用表

原理:该系统采用ICL7106、四个共阴极LED 数码管,ICL7106内部包括模拟电路(即双积分A/D 转换器)、数字电路两大部分。输入电压经量程转换进入ICL7106进行A/D 转换,直接在数码器上显示。ICL7106只有液晶笔段及背电极驱动,没有小数点驱动端。为显示小数点,需另加外围电路。 原理框图:

参考电压源

量 程 转 换

AC-DC 转换

A/D 转换器

CD4511译

码器

4位数码管

交流电? 是

方案三:由ICL7136构成的3 1/2为数字万用表

其原理、原理框图与ICL7106大致相同。有以下改进:1、在模拟电路的输出端增加了过零检测器和极性触发器;2、在缓冲器和积分器之间增加了一个自动调零模拟开关SAZ 。

四.方案比较

由上表可知,

项目 MC14433

ICL7106

转换速率 3~10次/s 0.1~15次/s 输入阻抗 1000M

10000M

基准电压 200.0V (200mV 量程) 100.0V (100mV 量程) 2.000V (2V 量程) 1.000V (1V 量程) 封装形式 DIP-24

DIP-40

电源电压 双电源供电,电源电压范围是+4.5V~+8V 。一般取典型值+5V 单电源供电,电源电压范围是7~15V ,典型值为9V 显示器 共阴极LED 显示器

LCD 显示器

显示方式 动态扫描方式,驱动线少

静态显示,驱动线多 显示特点 亮度高,亮暗对比度大,显示清晰,色彩绚丽,寿命长,功耗高

亮度低,亮暗对比度小,寿命短,微功耗

输出功能 具有BCD 码输出,可配计算机进行数据处理,自动控制自动打印结果 无BCD 码输出,不能配计算机或打印机

外围电路

需配基准电b 源,短译码驱动器和位驱动器,电路较复杂

外围电路简单,只需5个电阻和5个电容

LED 显 示 器

ICL 7106

振荡 电路

基准电压 分压电路

+ 输入 _

(1)MC14433与ICL7106比较前者具有转换速率高、输入阻抗低、电压范围大等优点,MC14433转换准确度比较高,相当于二进制11位的A/D转换器,还具有价格低廉、抗干扰性强之优点。

(2)3位半双积分式A/D转换器MC14433可以满足设计要求,适合实验室应用,其功能也较全面。ICL7106采用大规模集成电路芯片,价格昂贵实验室不易提供且不符合设计中用小规模集成芯片的要求。

(3)同ICL7106相比ICL7136有以下特点:微功耗、输入电流为1pA、低噪声、能消除超量程时的滞后效应、测量速度低。但总体性能仍不如MC14433。

故进行实验时用MC14433器件来构成3 1/2位数字万用表。

五.基本原理

该系统可采用MC14433 3位半A/D转换器,MC1413七路达林顿驱动阵列,CD4511BCD到七段锁存-译码-驱动器,基准电压MC1403和共阴极LED发光数码管组成。

(1)各部分功能如下:

1、3 1/2A/D转换器:将输入的模拟信号转换成数字信号

2、基准电源:提供精密电压,供A/D转换器作参考电压

3、译码器:将BCD码转换成七段信号

4、驱动器:驱动显示器的a,b,c,d,e,f,g七个发光段,推动发光数码管进行显示

5、显示器:将译码器输出的七段信号进行数字显示,读出A/D转换结果(2)工作过程如下:

3 1/2数字万用表通过位选信号DS1~DS4进行动态扫描显示,其中MC14433用来实现A/D转换、计数和控制逻辑等主要功能。由于MC14433电路的A/D转换结果是采用BCD码多路调制方法输出,只要配上一块译码器,就可以将转换结果一数字方式实现四位数字的LED 发光数码管动态扫描。DS1~DS4为输出多路调制选通脉冲信号,DS

选通脉冲为高电平则表示对应数位被选通,此时,该位数据在Q

0~Q

3

端输出。DS和EOC时序关系是在EOC脉冲结束之后,紧接着是DS1

输出正脉冲,以下依次是DS2、DS3、DS4,其中DS1对应高位(MSD)

DS4对应低位(LSD)。对应位选通期间,Q

0~Q

3

输出以BCD码形式数

据,DS1选通期间Q

0~Q

3

输出千位的半位数0或1及过量程、欠量程

和极性标志信号。

在位选信号DS1选通期间Q0~Q3的输出内容如下:

Q3表示千位数,Q3代表千位数的数字。若其值为1,则代表千位数的数字显示为0;反之,若其值为0,千位数的数字显示为1。

Q2表示被测电压的极性,Q2的电平为1,表示极性为正,即Vx>0,Q2的电平为0,表示极性为负,即Vx<0。显示数的负号(负电压)由MC1413中的一只晶体管控制,符号位“一”段的阴极与千位数的阴极接在一起,当输入信号Vx 为负电压时,Q2端输出置“0”。Q2负号控制位使得驱动器不工作,通过限流电阻Rm使显示器的“一”段(即g段)点亮;当输入信号Vx为正电压时,Q2端输出置“1”,负号控制位使反相器导通,电阻接地,使“一”旁路而熄灭。

小数点显示是由正电源通过限流电阻供电燃亮小数点。若量程不通则选通对应的小数点。

过量程是当输入电压Vx 超过量程范围时,输出过量程标志信号/OR 。 当Q3=0,Q0=1时,表示Vx 处于过量程状态。 当Q3=1,Q0=1时,表示Vx 属于欠量程状态。

当/OR=0时,|Vx|>1999,则溢出;|Vx|>Vr ,则/OR 输出低电平。

当/OR=1时,表示|Vx|

六.单元电路设计

6.1

器件介绍

(一) MC14433芯片引脚及其功能.

(1)MC14433的内部框图如图所示,主要包括模拟电路(A/D 转换器)、数字电路两大部分。

(2)MC14433采用24脚双列直插式封装(DIP ——40)管脚排列如下图所示:

一多路选择开关

锁存器个十百千极性

判别溢出逻辑控制模拟电路

时钟1-40-3

1

14433结构及引脚图

模拟地 .V AG 1

基准电压 V REF 2

输入 V 13 R1 4 R1/C1 5 C1 6 C01 7 C02 8 DU 9 CLK1 10

CLK2 11 V EE 12 MC14433 24 VDD 正电源 23 Q3 22 Q2 21 Q1 20 Q0 19 千位选通 18 百为选通 17十位选通 16个位选通 15 OR ˉ超量程 14 EOC A/D 转换结束标志 13 V SS 地 多路选择开关

锁存器

个十百

逻辑控制

时钟

1

积分元件

自动调零电容

实时输出控制端 时钟脉冲输入端 时钟脉冲输出端 负电源

BCD 码输出

MC14433 引脚排列图

各引脚功能如下:

U DD——正电源端,一般接+5V。

U AG——输入信号的公共端,简称模拟地。

U SS——输入信号Q0-Q3、DS1-DS4,ORˉ、ECO(不包括CL O)的公共地;此端接U AG时输出电压变化范围是U AG-U DD,接U EE端时是U EE-U DD。

U EE——负电源端,通常接-5V;U EE主要作为内部模拟电路的负电源,其负载电流约为0.8mA。

U I——模拟电压输入端,输入电压为U IN。

U REF——外接基准电压端。

R1、R1/C1、C1——外接积分元件端。

C01、C02——外接自动调零电容。

DU——实时输出控制端,亦称数据更新端。若在双积分第5阶段开始之前从DU端输入一个正脉冲,则本次A/D转换结果就依次通过锁存器和多路选择开关输出。否则,输出端仍保持锁存中原有数据不变。使用中若将DU端与EOC端相连,则每次A/D的转换结果都被输出;将DU端接U SS时即可实现读数保持。 CLK1、CLK2——分别为时钟脉冲输入、输出端,二者之间接上振荡电阻R C 即可产生时钟信号。

EOC——A/D转换结束标志输出端,每个A/D转换周期结束时此端输出一个正脉冲。

ORˉ——量程信号输出端,超量程时ORˉ=0(负逻辑)。

DS1-DS4——多路调制位选通信号输出端,其中DS1为千位,DS4为个位。 Q0-Q3——BCD码输出端。

(二) CD4511引脚图及其功能

CD4511引脚排列图

其功能介绍如下:

1)VDD,VSS为正负电源端,电源电压范围为3~18V通常取5V 2)A,B,C,D:BCD码输入端,A为最低位。

3)a、b、c、d、e、f、g:七段译码输出(高电平有效)可驱动共阴极LED

数码管。

4)LT为灯测试端,只要LT=0无论其它输入端状态如何LED显示为 8,各笔段都被点亮,由此检测数码管是否故障,正常工作时应为高电平。

5)BI为消隐功能端只要BI=0且LT=1,LED灭灯达到消隐目的,正常工作应置BI端为高电平。另外CD4511有拒绝伪码的特点,输入数据超过十进制数9(1001)时显示字形也自行消隐。

6)LE锁存信号:当LE=1且BI=LT=1时,则锁存输出信号LED保持前一时刻.

(三) MC1403的引脚及其功能

VIN 1 8

VOUT 2 7 7

MC1403

GND 3 6

N.C. 4 5

MC1403引脚图

MC1403的输出电压温度系数为0,即输入电压与温度无关。该电路的特点:(1)温度系数小;(2)噪声小;(3)输入电压范围大,稳定性能好,当输入电压从+4.5V变化到+15V时,输出电压值变化量ΔV0<3mV;(4)输出电压准确度较高,V0值在2.475-2.525V以内;(5)压差小,适用于低压电源;(6)负载能力小,该电源最大输出电流为10mA。

(四)MC1413反相驱动器(实验中用5个三极管搭建)

MC1413采用NPN达林顿复合晶体管的结构,因此有很高的电流增益和很高的输入阻抗,可直接接受MOS或CMOS集成电路的输出信号,并把电压信号转换成足够大的电流信号驱动各种负载。该电路内含有7个集电极开路反相器(也称OC门)。MC1413采用16引脚的双列直插式封装。每一驱动器输出端均接有一释放电感负载能量的抑制二极管。

6.2 AC/DC转换电路

交流电压测量电路如图所示:

左边IC1为精密半波整流电路,右边IC2为平均值-有效值变换电路。IC1输入端电压是经过衰减器和电压跟随器后得到的电压,此交流电压被限制在2V 以下,经过半波整流后,变换成平均值,再经过IC2修正使之成为电压的有效值。

半波整流后的平均值与有效值之间的关系如图所示,图中的Vm为输入端电压的峰值。V=1/ЛVm,Vˉ=1/√2 Vm。IC2是平均值-有效值变换电路,其作用是将经IC1半波整流后得到的输出电压加以平滑和放大,即将V放大到有效值V,放大倍数A u=V/Vˉ=2.22。IC2为反相放大器。

验证电路:

如输入电压有效值V~=2V,Vm=√2 X 2V=2.828V。

IC1输出半波整流电压,其平均值Vˉ=1/√2 Vm≈0.9V。

IC2输出直流电压:V=A u Vˉ≈2V。

所以上面的电路设计达到交流电压测量的目的。

6.3 电压、电流信号衰减电路

(1)电压衰减电路

四个电阻串联值为10MΩ,若隔直电容104通过交流电压使输出V0达到2V,则开关4接入的V i= V0 /10kΩ X 10MΩ=2000V,同理,其它档位1、2、3、4分别为2V、20V、200V、2000V。

(2)电流衰减电路

四个电阻串联值为1000Ω,若选1档,且使输出不超过2V,则I i X 1000Ω=V0≤2V,所以I i≤2mA。同理可计算出其它档的满量程电流。档位1、2、3、4

分别为2mA 、20mA 、200mA 、2A 。

图1-电压衰减电路 图2-电流衰减电路

6.4 电阻测量电路

如图3所示

X 0IN REF

R R U U =

0REF

IN

X R U U R =

选取不同的标准电阻并适当地对小数点进行定位,就能得到不同的电阻测量

挡。

对200Ω挡,取R 01=100Ω,小数点定在十位上。当R x =100Ω时,表头就会显示出100.0(Ω)。当R x 变化时,显示值相应变化,可以从0.1Ω测到199.9Ω。

又如对2k Ω挡,取R 02=1k Ω,小数点定在千位上。当R x 变化时,显示值相应变化,可以从0.001k Ω测到1.999k Ω。 由上分析可知,

R 1=R 01=100Ω

R 2=R 02-R 01=1000-100=900Ω R 3=R 03-R 02=10k -1k =9k ……

R x

IN+

A/D

转换

及 数字表头

R t

IN-

V REF+ V REF - 图3-电阻测量电路

R 1

R 2

R 3 R 4

900k 90k

9k

900 100

PTC

T

+V

200Ω 2k Ω 20k Ω

200k Ω 2M Ω R 5

6.5 电容测量

IC7是555方波产生器,低电平时触发IC8单稳态触发器。电容测量仪输出电压V0 与MC14433第3脚相连,通过A/D转换,可以从LED显示器上读出电容值。

下面分析IC7的工作情况。

C1放电时: t pL=R2C1ln2≈33 μS

C2充电时: t pH=(R1+R2)C1ln2≈3.3ms

占空比 K= t pH/(t pH + t pL)=(R1+R2)/(R1+2R2)≈0.99

频率 f=1/(t pH + t pL)≈300HZ。

IC8是555单稳态触发器,其输出脉宽tpo由被测电容Cx及电阻目的。

当×1挡R4=1ΜΩ时,被测电容Cx最大可达2000pF。

因此,

tpo≈RCln3≈1.1R4Cx=2.2ms

同理,×0.1、×10、×100、×1000挡都为2.2ms,单稳输出,脉冲宽度最大且固定不变,而且小于IC7输出脉宽3.3ms。

当×1挡被测Cx=2000pF时,tpo=0.22ms> t pL=0.033ms,IC8仍能集电极开路工作。

其波形如图所示

下面来计算IC8第3脚输出电压V 3的平均值。 当×1挡,Cx=2000pF 时,其输出电压最大。

V 平均=tpo/(t pH + t pL)×V 3m ≈0.66×V 3m ,其中V 3m 是IC8第3脚输出电压V 3幅值。

设数字表输出最大电压Vx=2V ,其方波幅度 V 3m= V 平均/0.66=V 0/0.66《=Vx/0.66=2V/0.66≈3V ,其中,V 3m= V 0《= Vx=2V 。 保持这一档量程不变,下面来验证一下显示的指示值正确与否。 例:当×1挡,Cx=200pF 时,V 平均3=0.2V 。 此时每个字母代表1pF 。

×1挡最小可测到tpo=0.33ms=11000000Cx 。

由上述计算可知,Vx=2V 时,IC8的第3脚方波幅度应为3V ,当555定时器供电为5V 时,其3脚电压幅度近似为4V ,为此必须加衰减器将电压由4V 降至3V 。

七.组装、调试内容

总电路组装与调试:

(1) 接通正负电源电压,+5V 、-5V ;调节电位器,使基准电压为2V 。 (2)将4只数码管插入板上,插好芯片CD4511、MC14433,用5个三极管搭成MC1413,按电路全图接好全部线路。

(3)接通电源,检查译码显示是否正常。

(4)将输入端接地,接通+5V ,-5V 电源(先接好地线),此时显示器将显示“000”值,如果不是,应检测电源正负电压。用示波器测量、观察DS1~DS4 ,Q0~Q3 波形,判别故障所在。

(5) 用电阻、电位器构成一个简单的输入电压VX 调节电路,调节电位器,4位数码将相应变化,然后进入下一步精调。

(6) 用数字万用表代测量输入电压,调节电位器,使VX =1.000V ,这时

V6.67

V3

V3

0.033ms

IC7 IC8

IC9

3V

电容测量部分波形图

被调电路的电压指示值不一定显示“1.000”,应调整基准电压源,使指示值与标准电压表误差个位数在5之内。

(7) 改变输入电压VX 极性,使Vi =-1.000V ,检查“-”是否显示,并校准显示值。

(8) 在+1.999V ~0~-1.999V 量程内再一次仔细调整(调基准电源电压)使全部量程内的误差均不超过个位数在5之内。

至此调试成功。

八.所用元器件

主要芯片

组件名称

型号

个数

A/D 转换器

MC14433 1 BCD 七段锁存/译码/驱动器

CD4511 1 达林顿反向驱动器 MC1413 1 能隙基准电源 MC1403 1 七段共阴极LED 数码管

-- 4 二极管 IN4001 4 运算放大器 LM324 2 单刀四掷开关 -- 5 可变电位器

--

4

电阻

阻值(Ω) 1 9 90 100 200 900 1K 10M 2K 3.3K 9K 个数

1

1 1 10 1 2

8

1

1 1

2 阻值

(Ω) 6.2K

10K 20K 39K 90K 100K 470K 900K 1M 9M 10M 个数

1

5

2

1

2

2

1

2

3

1

1

电容

九.设计心得和体会

这次实习是到大学来后的第一次真正的动手锻炼,虽说以前做过一些实验,但对其主要思想还是不太懂,主要是根据电路图直接搭接。

容值 0.01uF 470uF 100nF 10μF 个数

3

1

3

2

这次和以前就大不一样。第一节课是老师说做万用表,当时脑子里是一点想法都没有,大概该怎么弄呢?也没有思路,唯一知道的就是下来了查资料吧,下课后先去的图书馆,但不让借书就在里面找书看了看,大概有了些了解,后来去网吧查资料但却查不到,主要是不知道从哪个网站查,怎么查,看来这做设计的第一步查资料也要有经验啊!只有差得多了才能查得快找得多而全。找到资料后来是了解原理图,好多都与以前学的电路、模电、数电有关联,也发现了自己的好多不足,对以前的知识掌握的不是太充足,通过这次实习我知道了自己现在开的课是多么有用,以后一定要好好掌握。当然也在后来搭接电路时也出现了很大问题,以至最后没能完美结束,主要原因是没有按实验步骤来,没有把电路板和接线测试好就开始搭接电路,最后因元件问题没能做好,通过这次搭接我懂得无论做任何事情一定要先把准备工作做好,正是要车马未动粮草先行啊!通过这次实习我受益颇多,以后要抓住每次机会多多锻炼自己。

问题:Q1和Q2的关系?

Q4 Q3 Q2 Q1

0 0 0 1

0 0 1 0

0 0 1 1

这是一个二进制码,当Q1为2时进一位给Q2.

十、总电路图

十一.实验测得波形图

DS断和Q端的波形分别如下图所示:

图一

图二

参考文献

1、康华光、《电子技术基础》模拟部分第五版高等教育出版社

2、阎石《电子技术基础》数字部分第五版高等教育出版社

3、沙占友《新型数字电压表原理与应用》第一版机械工业出版社

4、高吉祥、易凡《电子技术基础实验与课程设计》第二版电子工业出版社

5、沙占友《新型数字多用表实用大全》电子工业出版社

6、杨刚、周群《电子系统设计与实验》电子工业出版社

7、林德杰《电气测试技术》第三版机械工业出版社

计算机图形学实验

实验1 直线的绘制 实验目的 1、通过实验,进一步理解和掌握DDA和Bresenham算法; 2、掌握以上算法生成直线段的基本过程; 3、通过编程,会在TC环境下完成用DDA或中点算法实现直线段的绘制。实验环境 计算机、Turbo C或其他C语言程序设计环境 实验学时 2学时,必做实验。 实验内容 用DDA算法或Besenham算法实现斜率k在0和1之间的直线段的绘制。 实验步骤 1、算法、原理清晰,有详细的设计步骤; 2、依据算法、步骤或程序流程图,用C语言编写源程序; 3、编辑源程序并进行调试; 4、进行运行测试,并结合情况进行调整; 5、对运行结果进行保存与分析; 6、把源程序以文件的形式提交; 7、按格式书写实验报告。 实验代码:DDA: # include # include

void DDALine(int x0,int y0,int x1,int y1,int color) { int dx,dy,epsl,k; float x,y,xIncre,yIncre; dx=x1-x0; dy=y1-y0; x=x0; y=y0; if(abs(dx)>abs(dy)) epsl=abs(dx); else epsl=abs(dy); xIncre=(float)dx/(float)epsl; yIncre=(float)dy/(float)epsl; for(k=0;k<=epsl;k++) { putpixel((int)(x+0.5),(int)(y+0.5),4); x+=xIncre; y+=yIncre; } } main(){ int gdriver ,gmode ;

编译原理课程设计

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

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

计算机图形学课程设计书

计算机图形学课程设计 书 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

课程设计(论文)任务书 理学院信息与计算科学专业2015-1班 一、课程设计(论文)题目:图像融合的程序设计 二、课程设计(论文)工作: 自2018 年1 月10 日起至2018 年1 月12日止 三、课程设计(论文) 地点: 2-201 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)熟悉Delphi7的使用,理论与实际应用相结合,养成良好的程序设计技能;(2)了解并掌握图像融合的各种实现方法,具备初步的独立分析和设计能力;(3)初步掌握开发过程中的问题分析,程序设计,代码编写、测试等基本方法;(4)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; (5)在实践中认识、学习计算机图形学相关知识。 2.课程设计的任务及要求 1)基本要求: (1)研究课程设计任务,并进行程序需求分析; (2)对程序进行总体设计,分解系统功能模块,进行任务分配,以实现分工合作;(3)实现各功能模块代码; (4)程序组装,测试、完善系统。 2)创新要求: 在基本要求达到后,可进行创新设计,如改进界面、增加功能或进行代码优化。

3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写课程设计论文 (2)论文包括封面、设计任务书(含评语)、摘要、目录、设计内容、设计小结(3)论文装订按学校的统一要求完成 4)参考文献: (1)David ,《计算机图形学的算法基础》,机械工业出版社 (2)Steve Cunningham,《计算机图形学》,机械工业出版社 (3) 5)课程设计进度安排 内容天数地点 程序总体设计 1 实验室 软件设计及调试 1 实验室 答辩及撰写报告 1 实验室、图书馆 学生签名: 2018年1月12日 摘要 图像融合是图像处理中重要部分,能够协同利用同一场景的多种传感器图像信息,输出一幅更适合于人类视觉感知或计算机进一步处理与分析的融合图像。它可明显的改善单一传感器的不足,提高结果图像的清晰度及信息包含量,有利于更为准确、更为可靠、更为全面地获取目标或场景的信息。图像融合主要应用于军事国防上、遥感方面、医学图像处理、机器人、安全和监控、生物监测等领域。用于较多也较成熟的是红外和可见光的融合,在一副图像上显示多种信息,突出目标。一般情况下,图像融合由

编译实验报告+源代码

课程设计报告 ( 2013-- 2014年度第1学期) 名称:编译技术课程设计B 题目:简单编译程序的设计与实现院系:计算机系 班级:XXX 学号:XXX 学生姓名:XXX 指导教师:XXX 设计周数:XXX 成绩: 日期:XX 年XX 月

实验一.词法分析器的设计与实现 一、课程设计(综合实验)的目的与要求 1.1 词法分析器设计的实验目的 本实验是为计算机科学与技术专业的学生在学习《编译技术》课程后,为加深对课堂教学内容的理解,培养解决实际问题能力而设置的实践环节。通过这个实验,使学生应用编译程序设计的原理和技术设计出词法分析器,了解扫描器的组成结构,不同种类单词的识别方法。能使得学生在设计和调试编译程序的能力方面有所提高。为将来设计、分析编译程序打下良好的基础。 1.2 词法分析器设计的实验要求 设计一个扫描器,该扫描器是一个子程序,其输入是源程序字符串,每调用一次识别并输出一个单词符号。为了避免超前搜索,提高运行效率,简化扫描器的设计,假设该程序设计语言中,基本字(也称关键词)不能做一般标识符用,如果基本字、标识符和常数之间没有确定的运算符或界符作间隔,则用空白作间隔。 单词符号及其内部表示如表1-1所示,单词符号中标识符由一个字母后跟多个字母、数字组成,常数由多个十进制数字组成。单词符号的内部表示,即单词的输出形式为二元式:(种别编码,单词的属性值)。 表1-1 单词符号及其内部表示

二、设计(实验)正文 1.词法分析器流程图 2.词法分析器设计程序代码 // first.cpp : 定义控制台应用程序的入口点。// #include"stdafx.h" #include #include using namespace std; int what(char a) { if((int(a)>=48)&&(int(a)<=57)) {

汇编与微机原理课程设计报告

微机接口课程设计报告 (题目:模拟自动门) 指导老师郭兰英 班级2015240204

目录 一概述 (1) 1.1 课程设计名称 (1) 1.2 课程设计要求 (1) 1.3 课程设计目的 (1) 二设计思想 (1) 三实施方案 (2) 3.1 获得传感器和“门”的状态 (2) 3.2 驱动步进电机和点阵模块 (2) 3.3 实现硬件延时 (3) 四硬件原理 (3) 4.1 中断控制器8259 (4) 4.2并行接口8255 (4) 4.3 定时/计数器8254 (5) 4.4 点阵LED显示屏 (5) 4.5 步进电机 (6) 4.6 红外距离传感器 (7) 五软件流程 (8) 六程序运行结果及分析 (11) 6.1 开门状态 (11) 6.2 关门状态 (12) 6.3 关门操作进行时中断到开门操作 (14)

6.4特殊状态 (15) 七个人感想 (16) 八附录 (18)

一、概述 1.1课程设计名称 模拟自动门 1.2课程设计要求 1)用汇编语言编程完成硬件接口功能设计。 2)硬件电路基于80x86微机接口。 3)程序功能包含:步进电机转动、点阵显示开关门、传感器检测是否有人、8254延时。 4)传感器检测有人时开门,门全开后延时几秒关门,若关门时检测到有人,立刻开门。 1.3课程设计目的 通过本课程设计,让学生对微机系统有一个较面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。要求同学分组完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,编写设计程序及程序流程图。 二、设计思想 本程序主要功能是模拟商场等公共场所的自动门,实现有物体靠近并被传感器检测到时发生一系列变化的效果,模拟实现开门关门的功能。 为了尽量模拟真实场景下的自动门状态变化,本程序主要可以实现以下功能: 1、当传感器可检测范围内检测到物体,并且“门”为“关”的状态,立即“打开门”,即用一系列的硬件动作模拟自动门打开的动作和状态。 2、当“门”完全打开后一段时间后,传感器范围内检测不到物体时,立即“关闭门”, 用一系列的硬件动作模拟自动门关闭的动作和状态。

编译原理课程设计报告_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)格式规范性及考勤是否降等级:是()、否() 评阅人:职称: 年月日

图形学场景设计

图形学场景设计

计算机图形学课程设计报告 题目自然场景设计 院(系、部) 专业班级 学号

姓名成绩

1 设计目的与要求 1.1设计题目 自然场景设计 1.2 设计目的 以小组合作的方式绘制一个自然场景,给绘制的实体添加纹理光照效果,进一步巩固所学知识,提高团队合作能力 1.3 设计要求 (1)采用真实感图形学技术设计一个自然场景(2)模拟出水、云、山体等至少三种景物(3)实现场景的漫游 (4)对设计出的图像进行光照处理 (5)将图片的纹理贴附到物体表面 2 总体设计 2.1 功能简介 创建一个900*600的Windows窗口,在窗口中显示冰箱、电灯、茶壶三个实体,根据电灯位置在

地面上绘制个实体的投影;为茶壶添加纹理;利用键盘的方向键控制冰箱旋转,实现场景漫游2.2 功能模块图 主 初始化实体绘键盘操 作函数 电灯冰箱 茶壶 2.3 软件各模块功能介绍 2.3.1冰箱和茶壶的绘制 由四边形拼接出冰箱,通过平移旋转函数放置到指定位置,同时实现茶壶的绘制,在茶壶上添加纹理效果,通过平移旋转变换放置到冰箱上面2.3.2顶灯的绘制

绘制出一个带灯罩的电灯,并且将光源放置在灯泡的位置 2.3.3 设置光照 设置光照的各种参数,为场景添加光照效果,让实体具有立体效果 2.3.4 纹理图片生成 用数组存储一幅自己设计的纹理图片,方便实体添加纹理效果时的调用 2.3.5 影子生成 根据需求为场景中的实体添加阴影效果,使得场景效果更加逼真 2.3.6 法向量设置 为场景设置法向量,确保实体在不同的角度都能被看到 3 详细设计及关键代码 3.1 光照模块详细设计 3.1.1 光照设置功能 设置光照的各种参数,为场景添加光照效果,让实体具有立体效果 3.1.2 光照设置设计

编译原理 C++编译器课程设计报告

编译器的设计与分析 学号: 1233050143 姓名:李博 专业:计算机科学与技术 __ 课程:编译原理 指导教师:闫红

实验目的 本实验设计的小型编译程序涉及到编译前端的三个阶段:词法分析、语法分析和语义分析生成中间代码 ((四元式),编译程序的重点放在中间代码生成阶段。编译程序的输出结果包括词法分析后的二元式序 列、变量名表;语法分析后的状态栈分析过程显示;语义分析生成中间代码后的四元式程序。整个程序 分为三个部分:(1)词法分析部分(2)语法分析、语义分析及四元式生成部分(3)输出显示部分 实验要求: 本程序仅考虑由下面产生式所定义的程序语句: S →if B then S else S | while B do S | begin L end | A L →S;L | S A →i:= E B →B∧B|B∨B|~B|(B)|I rop i|i

其中,各个非终结符的含义是: S---语句 L—语句串 A—赋值句 B---布尔表达式 E---算术表达式 各个终结符的含义: i---整型变量或常数,布尔变量或常数; rop---为六种关系运算符的代表; ;---起语句分隔作用; :=---赋值符号 ~--逻辑非运算符; ∧----逻辑与运算符; ∨---逻辑或运算符; 规定程序是由一条语句或由begin和end嵌套起来的复合语句组成的,并且规定的语句末加上#@表示程序结束。下面是符合规定的程序示例:begin A:=A+B*C; C:=A+2; while AB do

if M=N THEN C:=D else while A<=D do A:=D end#@ 实验内容: 第一部分:词法分析 一.词法分析的功能: 输入:所给文法的源程序字符串 输出:1.二元组(单词种别,单词符号的属性值)构成的序列 2.关键字: { (相当于Pascal语言中的begin) , if ,else , while , }(相当于 Pascal语言中的end ) 所有的关键字都是小写字母. 3.运算符: + , - , * , / , = , < , <= , == , > , >= ,<> , && ,|| , ! 4.界符: 逗号,分号,左圆括号, 右圆括号, # 5.常数: 在这里只涉及到int型常量 6.其他单词是标识符(ID)和整形常数(NUM),通过以下正规式定义: ID = letter(letter|digit)* NUM = digit digit * 7.空格由空白,制表符和换行符组成,空格一般用来分隔ID,NUM,运算符,界符和关键字,词法分析阶段通常会被过滤掉。 二.词法分析程序设计

汇编课程设计报告

四川大学计算机学院 学生实验报告 实验名称:汇编课程设计报告 指导教师:唐宁九 姓名:廖偲 学号:0943111209 班级:软件09级一班 日期:20101114

实验报告 班级______________姓名_______________学号_________ 一、实验一:DEBUG基本命令与数据传输指令 二、实验的目的和要求: ? 1.熟练掌握DEBUG的基本调试命令,能够使用DEBUG编写、调试汇编语言程序片段。 ? 2.在理解数据传输指令的基础上按照实验内容中指定的程序片段对程序进行调试和记录; 三、实验的环境: 1.硬件环境:cpu 2.26gHZ、内存2G、显存1G、64位总线笔记本电脑 2.软件环境:win7 32位操作系统、8086/8088指令集系统(在windows系统中)、masm的汇编工具。 四、源程序清单: ?MOV AL, 01H ?MOV SI, 0002H ?LEA SI, [SI] ?MOV BYTE PTR [SI], 80H ?LAHF ?XCHG AL, AH ?SAHF ?XCHG AH, [SI] ?SAHF 五、操作内容: 1.从cmd在debug下进入用A命令进行汇编 格式: A [地址] 功能:从键盘输入汇编程序, 并逐条地把汇编指令翻译成机器代码指令存入对应内存单元。如果不指定汇编地址, 则以CS:IP为地址 2. 反汇编命令U使用 格式: U [地址]/[地址范围] 功能: 将指定地址范围内的机器代码翻译成汇编源程序指令显示出来, 并同时显示地址及代码。 注意: 反汇编时一定确认指令的起始地址, 否则得不到正确的结果。 3.寄存器查看/编辑命令r或r寄存器名称 功能: 显示当前所有寄存器内容, 状态标志及将要执行的下一条指令的地址、代码和汇编指令形式。

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

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

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

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

计算机图形学 课程设计作品

《计算机图形学Visual c++版》考试作业报告 题目:计算机图形学图形画板 专业:推荐IT学长淘宝日用品店530213 班级:推荐IT学长淘宝日用品店530213 学号:推荐IT学长淘宝日用品店530213 姓名:推荐IT学长淘宝日用品店530213 指导教师:推荐IT学长淘宝日用品店530213 完成日期: 2015年12月2日

一、课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合,提高学生设计图形及编写大型程序的能力,并培养基本的、良好的计算机图形学的技能。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握计算机图形学基本知识和算法设计的基本技能术,掌握分析、解决实际问题的能力。 通过这次设计,要求在加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。 二、设计内容推荐IT学长淘宝日用品店530213 设计一个图形画板,在这个图形画板中要实现: 1,画线功能,而且画的线要具备反走样功能。 2, 利用上面的画线功能实现画矩形,椭圆,多边形,并且可以对这些图形进行填充。 3,可以对选中区域的图形放大,缩小,平移,旋转等功能。 三、设计过程 程序预处理:包括头文件的加载,常量的定义以及全局变量的定义 #include "stdafx.h" #include "GraDesign.h" #include "GraDesignDoc.h" #include "GraDesignView.h" #include "math.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif //******自定义全局变量 int type = -1; CPoint point1; CPoint point2; CPoint temp[2];

汇编课程设计报告

汇编课程设计报告

学 号: 课程设计 题目打印水仙花数 学院计算机科学与技术 专业计算机科学与技术 班级 姓名 指导教师

武汉理工大学《汇编语言程序设计》课程设计 2012 年 6 月28 日 课程设计任务书 学生姓名:专业班级: 指导教师:工作单位:计算机科学与技术学院 题目: 打印水仙花数 初始条件: 理论:完成了《汇编语言程序设计》课程, 对微机系统结构和80系列指令系 统有了较深入的理解,已掌握了汇 编语言程序设计的基本方法和技 巧。 实践:完成了《汇编语言程序设计》的4 个实验,熟悉了汇编语言程序的设 计环境并掌握了汇编语言程序的 调试方法。 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 进一步理解和掌握较复杂程序的设计方 法,掌握子程序结构的设计和友好用户界 3

2.1简要分析 2.1.1原理说明 可以用标签来接收三位数,标签的好处在于可以限制输入的位数,并且通过实际输入位数可以直接进行一部分的异常处理。 将数存到标签后,因为是以ASCII码的形式存的,所以需要进行转换,将其变成十六进制数,转换后将数字存到申请的内存字中。在转换成十六进制数的过程中,可以对输入的数进行异常处理,判断是否输入有误。 在输出水仙花数时,设置一个计数器,从100开始循环判断,直到等于用户输入的数为止,依次判断是否为水仙花数,决定是否输出该数。 在输出时,分别取出水仙花数的个、十、百位数,转换成ASCII码再输出。 系统提示是否继续后,程序对用户输入的信息进行判断,若为y或Y则系统回到初始状态,若为n或N则退出系统,若为其他则提示输入错误并重新输入。 2.1.2程序流程图

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

编译原理课程设计报告 实验名称编译原理课程设计 班级 学号 姓名 指导教师 实验成绩 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) 对状态图进一步进行如下形式的改变

计算机图形学课程设计报告

计算机图形学 课程设计报告 设计课题: 专业班级: 学号: 学生姓名: 指导教师: 设计时间:2018.12.06

中南林业科技大学涉外学院理工系计算机图形学课程设计任务书

指导教师:廖宁教研室主任: 2018年12月06 日注:本表下发学生一份,指导教师一份,栏目不够时请另附页。 课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。 目录 一.设计目的……………………………………………………………二.设计要求…………………………………………………………… 1.构建基础类…………………………………………………… 2.构建直线类…………………………………………………… 3.构建变换类…………………………………………………… 4.构建填充类…………………………………………………… 5.构建光照类……………………………………………………三.开发环境…………………………………………………………四.详细设计 五.源程序 六.程序运行效果图 七.总结

设计目的 ?培养对图形建模、变换、投影、消隐、光照原理的理解和应用。 ?培养图形类的编程能力。 ?培养计算机图形学应用软件开发的能力。 设计要求 深入研究计算机图形学的生成原理,设计算法实现具体的类。 1.构建基础类 实现CP2类绘制二维点;实现CP3类绘制三维点;实现CRGB 类处理RGB颜色;实现CVector类处理矢量。 2.构建直线类 实现CLine类绘制任意斜率的直线、实现CALine类绘制任意斜率的反走样直线、实现CCLine类绘制任意斜率的颜色渐变直线、实现

CACLine类绘制任意斜率的反走样颜色渐变直线。 3.构建变换类 实现CTransForm完成二维和三维图形变换。 4.构建填充类 实现CFill类使用有效边表算法填充多边形、实现CZBuffer类进行深度缓冲消隐,并使用Gouraud和Phong明暗处理填充图形面片。 5.构建光照类 实现CLight类设置点光源、实现CMaterial类设置物体材质、实现CLighting类对物体实施光照。 开发环境 Viusal C++ 6.0的MFC框架。 详细设计 1.利用函数Ellipse画出人物的脸,并用给脸填充颜色。再利 用Ara画出人物的嘴巴。CRect确定人物的眼睛,给眼睛填 充颜色。利用画笔画出人物的鼻子。 2.添加ddaline()成员函数,编写自定义的成员函数ddaline ()程序,编写OnDraw()函数,画出人物的脚和脚趾。 3.添加星星star()成员函数,编写自定义的成员函数star() 程序,确定五角星的位置、大小和颜色。

计算机图形学课程设计

《计算机图形学》课程设计报告题目名称:球体背面剔除消隐算法 专业计算机科学与技术 班级计科15升-1班 学号 1516353004 姓名 指导教师王玉琨 2016 年 06 月 07 日

目录 设计内容与要求 (03) 总体目标和要求 (03) 内容与要求 (03) 总体设计 (03) 2.1 球的消隐处理基本原理 (03) 2.2 具体设计实现 (04) 详细设计 (04) 3.1调试后正确的程序清单 (04) 功能实现 (08) 4.1程序运行结果 (09) 4.2 功能实现及分析 (09) 总结 (09) 参考文献 (10)

球体背面剔除消隐算法 第 1章设计内容与要求 1.1 总体目标和要求 课程设计的目的:以图形学算法为目标,深入研究。继而策划、设计并实现一个能够表现计算机图形学算法原理的或完整过程的演示系统, 并能从某些方面作出评价和改进意见。 通过完成一个完整程序,经历策划、设计、开发、测试、总结和验收各阶段,达到: 1) 巩固和实践计算机图形学课程中的理论和算法; 2) 学习表现计算机图形学算法的技巧; 3) 培养认真学习、积极探索的精神; 4) 具备通过具体的平台实现图形算法的设计、编程与调试的能力; 5) 完成对实验结果分析、总结及撰写技术报告的能力。 总体要求:策划、设计并实现一个能够充分表现图形学算法的演示系统,界面要求美观大方,能清楚地演示算法执行的每一个步骤。 开发环境:Viusal C++ 6.0 1.2 内容与要求 球体背面剔除消隐算法 内容:(1)掌握背面剔除消隐算法原理; (2)实现矢量点积与叉积运算; (3)透视投影变换 (4)曲面体经纬线划分方法 功能要求: (1)绘制球体线框模型的透视投影图,使用背面剔除算法实现动态消隐; (2)通过右键菜单显示消隐效果,右键菜单有两个选项:未消隐与消隐; (3)使用键盘的上下左右控制键旋转消隐前后的球体; (4)单击左键增加视距,右击缩短视距; 第2章总体设计 2.1 球的消隐处理基本原理 球体的曲面通常采用一组网格多边形来表示,即把曲面离散成许多小平面片,用平面逼近曲面,一般使用许多四边形来逼近曲面。 网格四边形愈多,逼近曲面的精度就愈高,逼近效果就愈好,曲面看起来就越光滑。一般根据实际需要来确定合适的逼近精度即网格多边形数目。 当曲面表示为一组网格多边形时,消隐处理的主要工作是确定各网格多边形的可见性,由此可用平面立体的算法对曲面进行消隐处理。 球面的参数方程为:

汇编语言课程设计报告

课程设计报告 课程名称课题名称 汇编语言程序设计 1.显示彩色菱形 2.显示系统当前时间 专业 班级 学号 姓名 指导教师 年月日

课程设计任务书 课程名称汇编语言程序设计 课题 1.显示彩色菱形 2.显示系统当前时间专业班级 学生姓名 学号 指导老师 审批 任务书下达日期年月日 任务完成日期年月日

一、设计内容与设计要求 1.设计内容:通过本周的课程设计,学生能够巩固所学的基础知识,并能 够使学生更加熟练运用汇编程序设计语言来掌握综合汇编程序设计的方法和过程,以及为设计其它应用软件提供帮助,进而提高学生的软件设计能力。 (1)、编制一计算比赛成绩的程序,要求完成以下功能: a、9 名评委,每个评委给分范围为 0~100(整数); b、9名评委给分中,去掉一个最高分和一个最低分,剩余7 名评委的平均分即为参赛者的得分(精确到小数点二位); c、将得分在光标位置处显示出来。 (2) 、编制一程序,要求接收从键盘输入的一个班的学生成绩,并存放于30 字的 grade 数组中,各数据的格式为: 学号,成绩 1,成绩 2,?,成绩 5 然后根据 grade 中的学生成绩,把学生名次填入rank 数据组中,并显示出来,格式为:学号,名次 (3)、利用 INT 1CH(大约每秒中断 18.2 次)编写一个中断驻留程序,要求在屏幕的右 上角显示计算机中当前系统时间,显示格式为 时:分: 秒:1/100 秒 (4)、输入一个菱形的两条对角线长,在屏幕上用‘ * ’号画出一个彩色的菱形。 (5)、设置图形方式并显示彩条,要求: 选择背景色为蓝色,调色板为0,然后每行显示一种颜色,每四行重复一次, 一直到整个屏幕都显示出彩条 2.设计要求: 掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一 些实际的问题,为将来编写软件积累一些典型的案例处理经验。 (1)、设计正确,方案合理。 (2)、界面友好,使用方便。 (3)、程序精炼,结构清晰。 (4)、设计报告 5000 字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。 (5)、上机演示。 (6)、按学号顺序选课题号,并在规定的时间内独自完成相关课题的汇编源程序编

编译原理课程设计报告

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 -

计算机图形学课程设计--图形绘制变换教案资料

计算机图形学 实验报告 课程名称 : 计算机图形学 实验名称 :图形绘制与变换学院 : 电子信息工程学院专业 : 计算机科学与技术班级 : 11计科本 01班学号 : 姓名 : 张慧 指导教师 : 王征风 二零一四年

目录 一、引言--------------------------------------------------------------------- 3 二、设计需求----------------------------------------------------------------- 4 设计目标--------------------------------------------------------------- 4设计环境--------------------------------------------------------------- 4 VC++ -------------------------------------------------------------- 4 MFC --------------------------------------------------------------- 4设计题目及要求 -------------------------------------------------------- 5总体流程图------------------------------------------------------------ 5三、课程设计原理------------------------------------------------------------- 5 实现的算法------------------------------------------------------------- 5 Bresenham算法画直线------------------------------------------------ 6中心点算法画圆和椭圆------------------------------------------------ 6图形变换的基本原理 ----------------------------------------------------- 8平移变换 ----------------------------------------------------------- 8 旋转变换 ---------------------------------------------------------- 8 比例变换 ---------------------------------------------------------- 9四、总体设计与功能实现 ------------------------------------------------------- 9 主要界面设计 ----------------------------------------------------------- 9设置颜色界面 ----------------------------------------------------------- 9界面设置代码 ------------------------------------------------------- 9 运行结果 ---------------------------------------------------------- 10二维线画图元实现 ------------------------------------------------------ 10画多边形功能的实现 --------------------------------------------------- 14画Bezier曲线功能的实现----------------------------------------------- 15

相关文档
最新文档