文档库 最新最全的文档下载
当前位置:文档库 › 利用VHDL的实现通用计算器的源程序

利用VHDL的实现通用计算器的源程序

利用VHDL的实现通用计算器的源程序
利用VHDL的实现通用计算器的源程序

源程序:

4位二进制并行进位加法器的源程序ADDER4B.VHD 如下

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY ADDER4B IS --四位二进制并行加法器

PORT(ci:IN STD_LOGIC; --低位进位

a:IN STD_LOGIC_VECTOR3 DOWNTO 0); --4位加数

b:IN STD_LOGIC_VECTOR(3 DOWNTO 0); --4位被加数

s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); --4位和

co:OUT STD_LOGIC --进位输出

);

END ADDER4B;

ARCHITECTURE behave OF ADDER4B IS

SIGNAL SINT:STD_LOGIC_VECTOR(4 DOWNTO 0); --部定义的一个数据

SIGNAL aa,bb:STD_LOGIC_VECTOR(4 DOWNTO 0);

BEGIN

aa<=’0’&a; --将4位加数矢量扩为5位,为进位提供空间

bb<=’0’&b; --将4位被加数矢量扩为5位,为进位提供空间

INT<=aa+bb+ci; -- 相加

s<=SINT(3 DOWNTO 0);

co<=SINT(4); --最高位为输出进位

END behave;

顶层模块:8位二进制并行进位加法器的部分程序ADDER8B.VHD如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY ADDER8B IS

PORT(ci:IN STD_LOGIC;

a:IN STD_LOGIC_VECTOR(7 DOWNTO 0);

b:IN STD_LOGIC_VECTOR(7 DOWNTO 0);

s:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);

co:OUT STD_LOGIC

);

END ADDER8B;

ARCHITECTURE a OF ADDER8B IS

Component adder4B --引用4位二进制并行进位加法器

PORT(ci:IN STD_LOGIC;

a:IN STD_LOGIC_VECTOR3 DOWNTO 0);

b:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

co:OUT STD_LOGIC

);

END COMPONENT;

SIGNAL CARRY_OUT:STD_LOGIC; --4位加法器的进位标志

BEGIN

U1:ADDER4B --安装一个4位二进制加法器U1

PORT MAP(ci=>ci,a=>a(3 DOWNTO 0),b=>b(3 DWONTO 0),s=>(3 DOWNTO

0),co=>CARRY_OUT);

U2:ADDER4B --安装一个4位二进制加法器U2

PORT MAP(ci=>CARRY_OUT,a=>a(7 DOWNTO 4),b=>b(7 DWONTO 4),s=>(7 DOWNTO 4),co=>co);

END behave;

加法器VHDL程序如下

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY adder IS

port(a:in std_logic; --被加数a

b:in std_logic; --加数b

ci:in std_logic; --输入进位

s:out std_logic; --结果输出

co:out std_logic --输出进位

);

end adder;

architecture behave of adder is

signal tem: std_logic; --暂存

signal stem: std_logic;

begin

tem<=a xor b; --中间变量

stem<=tem xor ci; --结果

co<=(tem and ci) or (a and b); --进位输出

s<=stem; --输出

end behave;

4位二进制并行进位减法器的源程序suber.VHD如下

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY sub4 IS

PORT(a:IN STD_LOGIC_VECTOR(3 DOWNTO 0); --4位被减数

b:IN STD_LOGIC_VECTOR(3 DOWNTO 0); --4位减数

ci:IN STD_LOGIC; --输入进位

s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); --结果输出

co:OUT STD_LOGIC --输出进位

);

end suber;

architecture behave of suber is

component adder is --引用加法器的模块

port(a:in std_logic;

b:in std_logic;

ci:in std_logic;

s:out std_logic;

co:out std_logic

);

end component;

signal btem:std_logic_vector(3 downto 0); --减数寄存

signal ctem:std_logic_vector(4 downto 0); -- 进位寄存

signal stem:std_logic_vector(3 downto 0); -- 结果寄存

begin

btem(3 downto 0)<=not b(3 downto 0); --先把减数求反

ctem(0)<=not ci; --输入的进位也求反,从而对减数求补码

g1:for I in 0 to 3 generate --连用4位全加器

add:adder port map (a(i),btem(i),ctem(i),stem(i),ctem(i+1));

end generate;

s(3 downto 0)<=stem(3 downto 0); --结果输出

co<=not ctem(4); --求反输出进位

end behave;

乘法器的源程序:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

Entity mul is

Port(

a:in std_logic_vector(3 downto 0); --4位被乘数

b:in std_logic_vector(3 downto 0); --4位乘数

y:out std_logic_vector(7 downto 0) --乘积);

end mul;

architecture arch of mul is

begin

y(7 downto 0)<=a(3 downto 0)*b(3 downto 0);

end arch;

除法器的源程序:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

entity diver is

PORT(a:IN STD_LOGIC_VECTOR(7 DOWNTO 0); --8位被除数输入b:IN STD_LOGIC_VECTOR(3 DOWNTO 0); --4位除数输入

clk:IN STD_LOGIC; --时钟

str:IN STD_LOGIC; --启动信号

s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); --4位商输出

y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) --4位余数输出

);

End;

Architecture behave of diver is

Component suber is --引用减法器

PORT(a:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

b:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

ci:IN STD_LOGIC;

s:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

co:OUT STD_LOGIC

);

End component;

type state_type is(start,one,two,three,eror); --状态定义

signal state:state_type; --定义状态变量

signal ain: std_logic_vector(7 downto 0); --被除数寄存

signal bin: std_logic_vector(3 downto 0); --除数寄存

signal atem: std_logic_vector(3 downto 0); --减法器被减数输入

signal btem: std_logic_vector(3 downto 0); --减法器减数输入

signal stem: std_logic_vector(3 downto 0); --结果寄存

signal citem: std_logic; --减法器借位输入

signal cotem:std_logic; --减法器借位输出

begin

p2:process(clk)

variable n: integer range 0 to 3; --移位次数计数值

begin

if clk’event and clk=’1’ then

case state is

when atart=> --开始状态

if str=’1’ then --收到启动信号

state<=one; --转到状态one

atem(3 downto 0)<=a(7 downto 4); --把高4位放到减法器被减数端

btem(3 downto 0)<=b(3 downto 0); --把除数放到减法器减数端

ain(7 downto 0)<=a(7 downto 0); --寄存被除数

bin(3 downto 0)<=b(3 downto 0); --寄存除数

end if;

when one=> --第一次移位

if cotem=’0’ then --被除数高4位小于除数,溢出!

state<=eror; --转到出错状态

else --不溢出

ain(3 downto 1)<=ain(2 downto 0); --被除数做移位

ain(0)<=not cotem; --在最低位接收该位商值

atem(3 downto 0)<=ain(6 downto 3); --把除数寄存器高4位输到减法器,作为减法器被减数

state<=two; --转到下一状态

end if;

when two=> --再做3此移位

if n=2 then --第四次移位

state<=three; --是,则跳转到下一状态

n:=0; --移位计数器清零

else --否则

state<=two; --还回到这个状态

n:=n+1; --移位计数器加1

end if;

if cotem=’0’ then --不够减,有借位

atem(3 downto 1)<=stem(2 downto 0); --减法器结果移位作为下一次的输入else --够减,没有借位

atem(3 downto 1)<=atem(2 downto 0); --结果输出移位作为下一次的输入

end if;

ain(3 downto 1)<=ain(2 downto 0); --结果寄存器左移一位

ain(0)<=not cotem; --这次运算借位输出,输入到寄存器ain最后一位

atem(0)<=ain(3); --寄存器ain的最高位作为减法器输入被减数的低位

when three=> --正常运算结果输出

s(3 downto 1)<=ain(2 downto 0); --寄存器ain低3位作为输出结果高3位

s(0)<=not cotem; --最后一次减法运算的借位输出求反作为结果输出最低位if cotem=’0’ then --最后一次减法运算,够减(无借位)

y(3 downto 0)<=atem(3 downto 0); --则减法器输出结果为整个除法的余数

else --否则,不够减

y(3 downto 0)<=atem(3 downto 0); --则最后一次减法运算的被减数为整个除法的余数end if;

atem(3 downto 0)<= "0"; --寄存器清零

btem(3 downto 0)<= "0"; --寄存器清零

state<=start; --回到开始状态

when eror=> --溢出状态

state<=start; --回到开始状态

atem(3 downto 0)<= "0"; --寄存器清零

btem(3 downto 0)<= "0"; --寄存器清零

end case;

end if;

end process p2;

citem<=’0’; --4位减法器借位输入接地

U1:suber port map(atem,btem,citem,stem,cotem);

end behave;

数字按键译码电路VHDL语言描述

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

entity numdecoder is

port(reset:in std_logic;

inclk:std_logic;

innum:std_logic_vetctor(9 downto 0);

outnum:buffer std_logic_vector(3 woento 0);

outflag:out std_logic);

end;

architecture behave of numdecoer is]

begin

if reser=’1’then

outnum<=”0000”;

elsif inclk’event and inclk=’1’then

case innum is

when”0000000001”=>outnum<=”0000”;outflag<=’1’; --按下第一个键表示输入0

when”0000000010”=>outnum<=”0001”;outflag<=’1’; --按下第二个键表示输入1

when”0000000100”=>outnum<=”0010”;outflag<=’1’; --按下第三个键表示输入2

when”0000001000”=>outnum<=”0011”;outflag<=’1’; --按下第四个键表示输入3

when”0000010000”=>outnum<=”0100”;outflag<=’1’; --按

下第五个键表示输入4

when”0000100000”=>outnum<=”0101”;outflag<=’1’; --按下第六个键表示输入5

when”0001000000”=>outnum<=”0110”;outflag<=’1’; --按下第七个键表示输入6

when”0010000000”=>outnum<=”0111”;outflag<=’1’; --按下第八个键表示输入7

when”010*******”=>outnum<=”1000”;outflag<=’1’; --按下第九个键表示输入8

when”1000000000”=>outnum<=”1001”;outflag<=’1’; --按下第十个键表示输入9

when others=>outnum<=outnum;outflag<=’0’; --不按键时保持

end case;

end if;

end process;

end behave;

7段译码器的vhdl语言描述

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; entity vdecode is

port(indata:in std_logic_vector(3 downto 0);

outdata:out std_logic_vector(0 to 6)

);

End;

Atchitecture behave of vdecode is

Begin

With indata select

Outdata<=”1111110”when”0000”,

”0110000”when”0000”,

”1111001”when”0000”,

”0110011”when”0000”,

”1011011”when”0000”,

”1011111”when”0000”,

”1110000”when”0000”,

”1111111”when”0000”,

”1111110”when”0000”,

”1111110”when”0000”,

”1111011”when”0000”,

”0000000”when others;

End behave;

8位二进制数转换成个位、十位、百位的进程:Ctrview:process(c,clk)

Begin

If c=’1’then

view1<=”0000”;view2<=”0000”;view<=”0000”;

viewstep<=takenum;

elsif clk’event and clk=’1’then

case virestep is

when takenum=>

ktemp<=keep;

viewstep<=hundred=>

if ktemp>=”11001000”then

view1<=”0010”;ktemp<=ktemp-“11001000;

elsif ktemp>=”01100100”then

view1<=”0001”;ktemp<=ktemp-“01100100”;

elsif view1<=”0000”;

end if;

viewstep<=ten;

when ten=>

if ktemp>=”01011010”then

view2<=”1001”;ktemp<=ktemp-“01011010”;

elsif ktemp>=”01010000”then

简单计算器c++课程设计

简单计算器 1 基本功能描述 简单计算器包括双目运算符和单目运算符。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦、阶乘、对数、开方、倒数等运算。可对输入任意操作数包含小数和整数及正数和负数进行以上的所有运算并能连续运算。出现错误会给出提示,同时包含清除、退格、退出功能以及有与所有按钮相对应的菜单项。 2 设计思路 如图1,是输入数据子函数的流程图。打开计算器程序,输入数据,判断此次输入之前是否有数字输入,如果有,则在之前输入的数字字符后加上现有的数字字符;如果没有,则直接使编辑框显示所输入的数字字符。判断是否继续键入数字,如果是,则继续进行前面的判断,如果否,则用UpdateData(FALSE)刷新显示。 如图2,是整个计算器的流程图。对于输入的算式,判断运算符是双目运算符还是单目运算符。如果是双目运算符,则把操作数存入数组a[z+2]中,把运算符存入b[z+1]中;如果是单目运算符,则把字符串转化为可计算的数字,再进行计算。下面判断运算符是否合法,如果合法,则将结果存入a[0],不合法,则弹出对话框,提示错误。结束程序。

输入一个数字 在之前输入的数字字符后面加上现在的数字字符。 Eg :m_str+=”9”。 直接使编辑框显示所输入的数字字符。 Eg :m_str=”9”。 pass3=1表示已有数字输入 开始 之前是否有数字输入? pass3==1? 继续键入数字? 用UpdateData(FALSE)刷新显示 图1 输入数据子函数流程图 Y N Y N

输入开始 双目运算符 是否每一个操作数都存入a[]数组? 把操作数存入a[z+2],把运算符存入b[z+1]。 单目运算符 将字符串转换 为可计算的数进行运算 运算是否合法? 将结果存入a[0] 弹出对话框提示错误 结束Y Y N N 图2 简单计算器总流程图

android简单计算器课程设计.

摘要 Android是当今最重要的手机开发平台之一,它是建立在Java基础之上的,能够迅速建立手机软件的解决方案。Android的功能十分强大,成为当今软件行业的一股新兴力量。Android基于Linux平台,由操作系统、中间件、用户界面和应用软件组成,具有以下5个特点:开放性、应用程序无界限、应用程序是在平等条件下创建的,应用程序可以轻松的嵌入网络、应用程序可以并行运行。而简单计算器又是手机上必备的小程序,所以此次创新实践很有意义。并且具有很强的使用性。 关键字:Android Java基础计算器

目录 第1章开发工具与环境 (1) 1.1 Android平台 (1) 1.2 Java开发环境 (1) 1.3 Eclipse (1) 1.4 Android程序基础—Android应用程序的构成 (2) 第2章系统分析与设计 (4) 2.1系统的可行性分析 (4) 2.2 系统的需求分析 (4) 2.3 系统的优势 (4) 2.4 系统的流程图 (5) 第3章系统详细设计 (6) 3.1 动作Activity (6) 3.2 布局文件XML (6) 3.3 Activity的详细设计 (7) 3.2 布局文件XML的详细设计 (21) 3.2 系统的运行结果 (24) 结论 (25) 参考文献 (26)

第1章开发工具与环境 1.1 Android平台 1.谷歌与开放手机联盟合作开发了Android, 这个联盟由包括中国移动、摩托罗拉、高通、宏达和T-Mobile在内的30多家技术和无线应用的领军企业组成。 2.Android是一个真正意义上的开放性移动设备综合平台。通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,来建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统,这样应用之间的通用性和互联性将在最大程度上得到保持。 3.所有的Android应用之间是完全平等的。 4.所有的应用都运行在一个核心的引擎上面,这个核心引擎其实就是一个虚拟机,它提供了一系列用于应用和硬件资源间进行通讯的API。撇开这个核心引擎,Android的所有其他的东西都是“应用”。 5.Android打破了应用之间的界限,比如开发人员可以把Web上的数据与本地的联系人,日历,位置信息结合起来,为用户创造全新的用户体验。 1.2 Java开发环境 Java技术包含了一个编程语言及一个平台。Java编程语言具有很多特性,如面向对象、跨平台、分布式、多线程、解释性等等。Java编程语言起源于Sun公司的一个叫“Green”的项目,目的是开发嵌入式家用电器的分布式系统,使电气更加智能化。1996年1月发布了JDK1.1版本,一门新语言自此走向世界。之后,1998年12月发布了1.2版本,2002年2月发布1.4版本,2004年10月发布1.5版本(5.0),2006年12月发布1.6(6.0)版本,这是目前的最新版本。Java1.2版本是一个重要的版本,基于该版本,Sun将Java技术分为J2SE、J2ME、J2EE,其中J2SE为创建和运行Java程序提供了最基本的环境,J2ME与J2EE 建立在J2SE的基础上,J2ME为嵌入式应用(如运行在手机里的Java程序)提供开发与运行环境,J2EE为分布式的企业应用提供开发与运行环境。 1.3 Eclipse

简易计算器课程设计

评阅教师评语:课程设计成绩 考勤成绩 实做成绩 报告成绩 总评成绩指导教师签名: 课程设计报告 论文题目基于ARM的简易计算器设计 学院(系):电子信息与自动化学院 班级:测控技术与仪器 学生姓名:同组同学: 学号:学号: 指导教师:杨泽林王先全杨继森鲁进时间:从2013年 6 月10 日到2013年 6 月28 日 1

目录 1、封面—————————————————————P1 2、目录—————————————————————P2 3、前言—————————————————————P3 4、关键字————————————————————P3 5、原理与总体方案————————————————P3 6、硬件设计———————————————————P6 7、调试—————————————————————P10 8、测试与分析——————————————————P11 9、总结—————————————————————P13

10、附件—————————————————————P14 前言 近几年,随着大规模集成电路的发展,各种便携式嵌入式设备,具有十分广阔的市场前景。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。在嵌入式系统中,数据和命令通过网络接口或串行口经过ARM程序处理后,或显示在LCD上,或传输到远端PC上。 本文通过周立功的LPC2106芯片完成的简易计算器,正是对嵌入式应用的学习和探索。 一、摘要: 计算器一般是指“电子计算器”,是能进行数学运算的手持机器,拥有集成电路芯片。对于嵌入式系统,以其占用资源少、专用性强,在汽车电子、航空和工控领域得到了广泛地应用。本设计就是先通过C语言进行相应程序的编写然后在ADS中进行运行最后导入PROTUES进行仿真。最后利用ARM中的LPC2106芯片来控制液晶显示器和4X4矩阵式键盘,从而实现简单的加、减、乘、除等四则运算功能。 关键字:中断,扫描,仿真,计算 二、原理与总体方案: 主程序在初始化后调用键盘程序,再判断返回的值。若为数字0—9,则根据按键的次数进行保存和显示处理。若为功能键,则先判断上次的功能键,根据代号执行不同功能,并将按键次数清零。程序中键盘部分使用行列式扫描原理,若无键按下则调用动态显示程序,并继续检测键盘;若有键按下则得其键值,并通过查表转换为数字0—9和功能键与清零键的代号。最后将计算结果拆分成个、十、百位,再返回主程序继续检测键盘并显示;若为清零键,则返回主程序的最开始。 电路设计与原理:通过LPC2106芯片进行相应的设置来控制LCD显示器。 而通过对键盘上的值进行扫描,把相应的键值通过MM74C922芯片进行运算从而

最新单片机简易计算器课程设计

单片机简易计算器课 程设计

引言 说起计算器,值得我们骄傲的是,最早的计算工具诞生在中国。中国古代最早采用的一种计算工具叫筹策,又被叫做算筹。这种算筹多用竹子制成,也有用木头,兽骨充当材料的。约二百七十枚一束,放在布袋里可随身携带。直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的"纳皮尔算筹",英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 本任务是个简易的两位数的四则运算,程序都是根据教材内和网络中的程序参考编写而成,在功能上还并不完善,限制也较多。本任务重在设计构思与团队合作,使得我们用专业知识、专业技能分析和解决问题全面系统的锻炼。 随着半导体集成工艺的不断发展,单片机的集成度将更高、体积将更小、功能将更强。在单片机家族中,80C51系列是其中的佼佼者,加之Intel公司将其MCS –51系列中的80C51内核使用权以专利互换或出售形式转让给全世界许多著名IC制造厂商,如Philips、 NEC、Atmel、AMD、华邦等,这些公司都在保持与80C51单片机兼容的基础上改善了80C51的许多特性。这样,80C51就变成有众多制造厂商支持的、发展出上百品种的大家族,现统称为80C51系列。80C51单片机已成为单片机发展的主流。专家认为,虽然世界上的MCU品种繁多,功能各异,开发装置也互不兼容,但是客观发展表明,80C51可能最终形成事实上的标准MCU芯片。 事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台

简易计算器课程设计

科研训练论文 题目:基于单片机的计算器的设计 目录 一、概述 (3) 1.1设计要求及任务: (3) 1.2设计原理: (3) 二、系统总体方案及硬件设计 (3) 2.1计算器总体思想 (3) 2.2硬件的选择与连接 (4) 2.2.1硬件选择 (4) 2.2.2接口设计 (5) 三、软件设计 (7)

3.2系统流程总图 (8) 3.3显示程序设计 (8) 3.4键盘识别程序设计 (9) 3.4.1原理与分析 (9) 3.4.2流程图 (10) 四、设计体会与总结 (11) 五、参考文献 (11) 附录 基于单片机的计算器的设计 摘要:本设计是一个实现加减乘除的计算器,它的硬件主要由四部分构成,一个8051单片机芯片,两个八段共阴极数码管,一个4*4键盘,它可以实现一位数的加减乘除运算。 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 关键词:LED接口;键盘接口;8255A;汇编语言

一、概述 1.1设计要求及任务: (1)设计4*4的键盘,其中10个数字键0~9,其余六个键“+”、“—”、“*”、“/”、“=”、和“C”键; (2)设计两位LED接口电路; (3)实现1位数的简单运算 1.2设计原理: (1)LED显示器接口技术 LED动态显示接口技术 (2)键盘显示技术 逐行(逐列扫描法) 二、系统总体方案及硬件设计 2.1计算器总体思想 显示部分:采用LED动态显示。 按键部分:采用4*4键盘。采用软件识别键值,并执行相应的操作。 执行过程:开机显示零,等待键入数值,当键入数字,经通过数码管显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在数码管上输出运算结果。

单片机简易计算器课程设计

单片机简易计算器课程设计 课程设计 题目名称________________ 简易计算器设计____________ 课程名称_____________ 单片机原理及应用____________ 学生姓名________________

班级学号________________ 2018年6月20日

目录 一设计目的 (2) 二总体设计及功能介绍 (2) 三硬件仿真图 (3) 四主程序流程图 (4) 五程序源代码 (5) 六课程设计体会 (28)

设计目的 本设计是基于51系列单片机来进行的简单数字计算器设计,可以完成计算器的键盘输入,进行加、减、乘、除六位整数数范围内的基本四则运算,并在LED上显示相应的结果。软件方面使用C语言编程,并用PROTUE仿真。 二总体设计及功能介绍 根据功能和指标要求,本系统选用MCS-51 系列单片机为主控机,实现对计算器的设计。具体设计及功能如下: 由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED显示数据和结果; 另外键盘包括数字键(0?9)、符号键(+、-、x、十)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘;

执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。 三硬件仿真图 硬件部分比较简单,当键盘按键按下时它的那一行、那一列的端口为低电平。因此,只要扫描行、列端口是否都为低电平就可以确定是哪个键被按下。

matlab课程设计简单计算器的设计

matlab课程设计报告 题目简易计算器的设计 学院电子信息工程学院 专业电子信息 学生姓名和学号 指导教师

一、选题目的及意义 GUI的广泛应用是当今计算机发展的重大成就之一,它极大地方便了非专业用户的使用。人们从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作,而在matlab有很简单的gui设计工具,我们可以通过这个工具轻松地构建我们想要的程序,从而实现与用户的信息交互。本次课程设计是使用了matlab中的guide生成了简单的计算器程序。 二、源代码 function varargout = Calculator(varargin) %Simple Calculator %@Anhui University % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Calculator_OpeningFcn, ... 'gui_OutputFcn', @Calculator_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);

if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before Calculator is made visible. function Calculator_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Calculator (see VARARGIN) % Choose default command line output for Calculator handles.output = hObject; % Update handles structure guidata(hObject, handles);

微机原理课程设计_简易计算器的设计

目录 一前言 (1) 二总体设计 (2) 三硬件设计 (2) 3.1微处理器8086芯片 (2) 3.2可编程并行接口芯片8255A (3) 3.44 3.5 4.1 4.2 五仿真 一前言 1.1 软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表

达设计思想和结果的能力。 1.2课程设计指导及要求 在课程设计时,2~3名同学组成1个设计小组,分别完成项目的功能设计、电路编辑及调试、编码及调试和课程设计报告编写工作。同批次同学中选择同一题的不超过3组。在教师指导下,可以相互讨论。每设计小组提交1份设计报告,设计报告由设计小组同学独立完成,不得互相抄袭。教师的主导作用主要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题,而

同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入准备好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入准备好标志,或者向CPU 发一个中断请求。CPU 可用查询方式或中断方式从接口中读取数据。接口中的数据被读取后,接口会自动清除状态寄存器中的标志,且 撤消对CPU 的中断请求。

单片机简易计算器课程设计

课程设计 题目名称简易计算器设计 课程名称单片机原理及应用 学生姓名 班级学号 2018年6 月20日

目录 一设计目的 (2) 二总体设计及功能介绍 (2) 三硬件仿真图 (3) 四主程序流程图 (4) 五程序源代码 (4) 六课程设计体会 (11)

一设计目的 本设计是基于51系列单片机来进行的简单数字计算器设计,可以完成计算器的键盘输入,进行加、减、乘、除六位整数数范围内的基本四则运算,并在LED上显示相应的结果。软件方面使用C语言编程,并用PROTUES仿真。 二总体设计及功能介绍 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机,实现对计算器的设计。具体设计及功能如下: 由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED 显示数据和结果; 另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16 个按键即可,设计中采用集成的计算键盘; 执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。

三硬件仿真图 硬件部分比较简单,当键盘按键按下时它的那一行、那一列的端口为低电平。因此,只要扫描行、列端口是否都为低电平就可以确定是哪个键被按下。

四主程序流程图 程序的主要思想是:将按键抽象为字符,然后就是对字符的处理。将操作数分别转化为字符串存储,操作符存储为字符形式。然后调用compute()函数进行计算并返回结果。具体程序及看注释还有流程图 五程序源代码 #include #include #include/* isdigit()函数*/ #include/* atoi()函数*/

C++简单计算器课程设计报告

目录 1 基本功能描述 (1) 2 设计思路 (1) 3 软件设计 (4) 3.1 设计步骤 (4) 3.2 界面设计 (5) 3.3 关键功能的实现 (11) 4 结论与心得体会 (12) 5 参考文献 (13) 6 思考题 (13) 7 附录 (14) 7.1 调试报告 (14) 7.2 测试结果 (15) 7.3 关键源代码 (16)

简单计算器 1 基本功能描述 简单计算器包括双目运算和单目运算功能。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦,阶乘,对数,开方,倒数等运算。可对输入任意操作数,包括小数和整数及正数和负数进行以上的所有运算并能连续运算。出现错误会给出相应提示,同时包含清除,退格,退出功能以及有与所有按钮相对应的菜单项。 2 设计思路 如图是整个计算器的流程图,打开计算器程序,输入数据,调用输入数据子程序。子程序开始时m_num为零。按下数字按钮后,判断m_num的正负号,对其进行相关处理,然后在判断是否有小数点,处理后输出结果。 回到总流程图中,输完第一个操作数后,若按下双目运算符,则把m_num存入num2,按下输入第二个操作数并算出结果。若按下的是单目运算符,则直接对其处理得出结果。若按下清零,则m_num等于0.在运算中还要判断运算是否合法,以及结果是否超出显示范围,以做出相关提示,按下清零。算出后把结果保存至num2。若需用算出的结果继续运算则回到输入完第一个操作数后,若不需要则判断试否需要开始新一轮的运算,不需要则结束。

输入数据子函数 N 图1 输入数据子函数流程图

图2 简单计算器总流程图

课程设计简易计算器

石家庄铁道大学课程设计 课程设计题目 单位 专业 学号 学生姓名 指导教师 完成日期年月日

摘要 课程设计语言类课程的指导思想:使学生通过学习高级编程语言的知识、编程技术和基本算法,掌握课程设计的思想和方法,具备利用计算机求解实际问题的能力,能灵活运用高级语言进行程序设计。 其实认真学习一门语言并不难,关键是所追求的学习方法和途径。通过C 语言程序设计,可以使我们掌握软件开发过程的难题分析、系统设计、程序编码、测试程序等基本方法和技能。同时,还能加强我们的时间管理意识,锻炼对难题的发现、分析和处理能力。我认为遇到难题并不可怕,可怕的是你不去解决,这可能是C语言课程设计的主要目的之一。 现时学习生活中,常会遇到一些数目较大数据繁杂的数值运算,徒手运算起来很困难,这时候我们就必须用到计算器。人们对计算的要求不断提高,普通的功能简单的仅能进行四则运算的计算工具已经不能满足需要,需要一种能进行多种计算。现在已经有一些功能较为强大、涵盖面较广的计算软件,而且各种平台的小工具仍不断出现。这些大大方便了我们的生活给我们更多的选择和实现方式。本程序的编写基础是Tubro 汉化版,它在tubro c的原有基础上实现了多汉字的支持方便了我们的使用。生成的程序可移植性强兼容性好稳定!本程序实现了加、减、乘、除、求幂、求模,求平方根,求Sin,求Cos,求Log10,求阶乘,取整,求正切,以及进制之间的相互转换。它可以直接输入数学表达式,不需要任何转换,就可以直接输出数学四则运算的结果。但是,每次只能运算一个表达式,按 CE清空后再计算下一组式子。本程序在进制转换方面有一些漏洞,但一般的进制转换结果还是准确的。

编写一个计算器程序课程设计报告范例

《金融IT 入门-程序设计》 课程设计报告 中国地质大学长城学 院XX 系 2017年 月 3 日 目录 一.总体概述: 二.设计目标: 三.程序流程图: 四.程序代码: 五.设计 体会: 题目: 用Python 编写简易计算器程序 学号: 专业: 班 级: 姓 名 : 指导教师: 2016-2017学年 第二学期

一、设计内容 1.课程设计目的: 1)掌握Java语言的程序设计方法; 2)理论联系实际,进一步提高学生的软件开发技术; 3)培养学生分析、解决问题的能力; 4)提高学生实践论文撰写能力。 2.课程设计任务:??

1)设计的计算器应用程序可以完成加法、减法、乘法、除法以及取余运算(可以进行浮点数和负数的运算); 2)有求倒数、退格和清零功能。 3.创新要求: 能进行正切、余弦,以及求平方根、指数(包括对e)、自然对数运算。图形界面采用继承windowadapter类,采取调用类方法来注册监听! 4.设计要求: 1)设计的计算器应用程序可以完成加法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。 2)课程设计可选用Eclipse、JBuilder、NetBeans等作为开发平台以提高开发效率,通过资料查阅和学习尽可能熟练掌握其中一种集成开发环境。 3)认真按时完成课程设计报告,课程设计报告内容包括:设计任务与要求、需求分析、设计思路、详细设计、运行调试与分析讨论和设计体会与小结六个部分。 二、原理与分析 1.开发的技术及功能 本课程设计是要做一个图形界面的计算器,其界面主要是由swing组件中的控件构成。程序实现了计算器的基本功能有:加、减、乘、除基本算术运算(可以进行浮点和负数运算)和sin、cos、tan等三角函数求值

单片机课程设计报告(简易计算器)

单片机实训报告 ———简易计算器 姓名*** 学号*** 专业*** 学校*** 指导教师 *** 实训时间2014.06.23-2014.06.29

目录 中文摘要............................................................1 关键词.............................................................1 1 实训任务.........................................................1 1.1 主要功能设计................................................1 1.2 任务目的....................................................1 2 整体设计方案.....................................................1 2.1 方案论证....................................................1 2.2 系统框图....................................................2 3 控制软件设计....................................................2 3.1 程序时序总图...............................................2 3.2 液晶显示软件设计............................................3 3.3 键盘输入软件设计...........................................5 3.4 计算函数设置...............................................7 4 软件调试........................................................8 个人小结...........................................................8参考文献...........................................................9附录...............................................................9

简易计算器VB课程设计报告

简易计算器 要求:用VB做类似于windows自带的计算器程序 绪论:Visual Basic(VB)是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。 1.界面设计: 根据WINDOWS计算器界面模型,修改后制作简易计算器界面。新建一个窗体,添加一个文本框用于显示运算数字和结果,添加若干按钮包括(数字0—9,+,-,*,/,=,x^ ,1/x,清屏,退出)。 当单击数字按钮时输入运算数时,单击运算符按钮,再单击“=”按钮,则再文本框中显示计算结果。具体如下图

计算器界面设计示意图 流程图如下: 简易计算器 ↓ 计算器管理界面 ↓ 计算界面 ↓ 退出程序 2.程序代码: Dim A, B As Single Dim Op As String Private Sub Command1_Click() Text1.Text = Text1.Text + Command1.Caption End Sub Private Sub Command14_Click() ’定义减法

If A = 0 Then A = Text1.Text Else B = Text1.Text End If Text1.Text = "" Op = "-" End Sub Private Sub Command2_Click() Text1.Text = Text1.Text + Command2.Caption End Sub Private Sub Command20_Click() ’定义平方 A = Text1.Text B = A ^ 2 Text1.Text = B End Sub Private Sub Command3_Click() Text1.Text = Text1.Text + Command3.Caption End Sub Private Sub Command4_Click() Text1.Text = Text1.Text + Command4.Caption End Sub Private Sub Command13_Click() ’定义加法If A = 0 Then A = Text1.Text Else B = Text1.Text End If Text1.Text = "" Op = "+" End Sub Private Sub Command5_Click() Text1.Text = Text1.Text + Command5.Caption End Sub Private Sub Command6_Click() Text1.Text = Text1.Text + Command6.Caption End Sub Private Sub Command17_Click() ’清屏Text1.Text = "" A = 0: B = 0 End Sub Private Sub Command19_Click() End End Sub

微机原理简易计算器课程设计报告

} 课程设计报告 课程设计名称:简易计算器 … 系别:三系 学生姓名:张梦瑶 班级: 11通信1班 学号: 111 成绩: 指导教师:袁静 开课时间: 2013-2014 学年 1 学期

- 一.设计题目 简易计算器 二.主要内容 1、采用模块化程序结构设计软件,可将整个软件分成若干功能模块。 · 2、画出程序流程图。 3、根据流程图,编写源程序。 4、上机调试程序。 三.具体要求 1、利用BIOS和DOS的中断来设计一个计算器,要求在屏幕上显示一个主菜单,提示用户输入相应的数字键,分别执行加、减、乘、除四种计算功能和结束程序的功能。 2、利用BIOS中断的10号功能调用来设置显示方式。 3、利用DOS中断的01号和02号子功能来完成键盘接收,结果显示。四.进度安排 五.成绩评定 考核方法:现场验收(占50%),课程设计报告(占50%)。 考核内容:学习态度(出勤情况,平时表现等)、方案合理性、程序编制质量、演示效果、设计报告质量。 成绩评定:优,良,中,及格,不及格。 特别说明:如发现抄袭,按照不及格处理。

、 目录 前言 (4) 1、设计题目 (5) 2、设计内容 (5) 基本内容 (5) 、 主要功能 (5) 3、设计原理及方案 (6) 总体方案 (6) 程序流程图 (7) 主程序 (7) 计算子程序 (8) 系统模块详细设计 (9) 界面设置 (9) · 算法选择设置 (10) 数制转换设置 (11) 4.汇编源程序代码 (13) 5、调试运行结果 (20)

操作说明 (20) 调试运行结果 (20) 6、心得体会 (23) 7、参考文献 (24) - 前言 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 计算器在我们日常生活中应用是相当普遍的,可以说它已经成为现代社会生活不可或缺的一部分。本次课程设计就是根据微机原理与接口的相关知识,利用BIOS和DOS的中断来设计一个简易计算器,能够实现加减乘除四则运算,并在屏幕上显示一个主菜单,提示用户输入相应的数字键,分别执行加、减、乘、除四种计算功能和结束程序的功能。同时利用BIOS中断的10号功能调用来设置显示方式,利用DOS中断的01号和02号子功能来完成键盘接收,结果显示。 通过本次课程设计,要求学生熟悉和掌握微机系统的软件的方法、设计步骤,使学生得到微机开发应用方面的初步训练,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 :

单片机简易计算器课程设计报告

中南林业科技大学 课程设计报告 设计名称:单片机计算器课程设计 姓名:汪琦学号:20082124 专业班级:电子信息工程一班 院(系):计算机与信息工程学院 设计时间:2010年12月28日星期二 设计地点:中南林业科技大学电子信息楼

目录 一、题目…………………………………………………………………………… 二、任务与要求(老师完成)………………………………………………… 三、课程设计摘要及整体方框图………………………………………………… 1..总体设计思路简述···················································· 2.硬件设计简述························································ 3.软件设计简述························································ 4.程序主流程图························································ 四、课程设计原理分析及相关知识概述………………………………………… 五、结论…………………………………………………………………………… 六、体会与收获…………………………………………………………………… 附件: 1、源程序代码(根据需要选择)…………………………………………… 2、整体电路原理图(根据需要选择)……………………………………… 2、元件表(根据需要选择)………………………………………………… 3、PCB板制作(根据需要选择)…………………………………………… 4、焊接与调试(根据需要选择)…………………………………………………

设计一个简单计算器的C语言课程设计报告

东华理工大学 C语言课程设计报告 题目:设计一个简单计算器 姓名:地瓜叶 学号:????? 指导老师:吴志强老师

目录 1.设计目的 2.内容 3.总体设计(有流程图) 4.源程序编写(附上了运行图) 5.执行结果 6.心得体会

一、设计目的 设计一个简单计算器,在功能上功能尽量模拟windows 操作系统中的计算器,系统界面不做强制要求。 全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数、指针和文件的操作,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,规范编程思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。 二、内容 1、程序设计的一般步骤 a、确定数据结构 b、确定算法 c、编程 d、调试 e、总结资料

2、基本要求 a.设计正确,方案合理,能实现相应功能。 b.界面友好,使用方便。 c.程序精炼,结构清晰。 d.设计报告含程序设计说明,用户使用说明,源程序清单及程序框图。 e.上机演示。 三、总体设计(程序设计组成框图、流程图) 四、源程序编写

#include #include #include double jisuan(char a[]) { int i=1,j,k,m,cnt=0,t1=0,t2=0,t3=0; char nibo[50],zhan2[50]; double x,n,l,z=0,zhan3[20]; typedef struct { double d1; int d2; }dd; typedef struct { dd data[50]; int top; }zhan1; zhan1 shu; shu.top=0; while(a[i]!='\0') { if(a[i]>='0'&&a[i]<='9') { z=0; j=i+1; while(a[j]>='0'&&a[j]<='9') {j++;} j--; for(k=i;k<=j;k++) { z=z*10+a[k]-'0'; } j=j+1; x=z; if(a[j]=='.') { l=1;

C语言简单计算器的编写课程设计

精心整理 2013-2014学年第二学期 《高级语言程序设计》 二0 1 资料,编写C语言程序,设计一个简单计算器,要求编写的简单计算器能够模拟windows系统的计算器,用户能够用键盘输入相关数据,能够进行简单的加、减、乘、除运算,并且在程序运行过程中能够正常的退出程序。? 在计算器程序运行中,输入数据时如果遇到输入错误的情况,能够能过键盘上的退格键进行删除,并且重新输入正确的数据。在数据输入完成后,如果需要

放弃本次计算操作,可以利用程序中设置好的按键进行清零,并为下一次运算作准备。 1.2 运用相关知识,查阅相关资料,编写一个简单的计算器,能够实现简单的基本的加减乘除运算,在计算器工作时用户能利用键盘或鼠标进行相应操作。程序基本功能要求实现完整,并有简单的验证。程序还须有符合标准的程序设计报告。

2 概要设计 2.1系统流程图 2.2

3设计过程或程序代码 #include { 定义 { }dd; { }zhan1; zhan1 *shu; /*定义指针变量*/ shu=(zhan1 *)malloc(sizeof(zhan1)); shu->top=0; while(a[i]!='\0') /*外循环是用while语句*/ {

if(a[i]>='0'&&a[i]<='9') /*内循环使用if-else语句*/ { z=0; j=i+1; while(a[j]>='0'&&a[j]<='9') /*内循环使用各种循环语句的嵌套*/ {j++;} j--; { } { 内循环 { x=x+n*(a[k]-'0'); } i=j+1; } else i=j; shu->data[++shu->top].d1=x; shu->data[shu->top].d2=++cnt; nibo[++t1]='0'+shu->data[shu->top].d2;

java简易计算器课程设计

目录 1设计目的 (2) 2设计题目及要求 (3) 3设计算法分析 (4) 3.1 模块调用层次图 (4) 3.2核心算法描述 (5) 3.3系统特点 (7) 4程序代码 (8) 5调试情况 (16) 6结论 (18) 参考文献 (19)

简易计算器 1.设计目的 本课程设计的目的就是要通过一次集中的强化训练,使学生能及时巩固已学的知识,补充未学的但又必要的内容。进行课程设计目的在于加深对程序设计基础中基础理论和基本知识的理解,促进理论与实践的结合,进一步提高程序设计的能力。具体目的如下:1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。 2.培养学生综合运用所学知识独立完成课题的能力。 3.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。 4.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。 5.培养学生从资料文献、科学实验中获得知识的能力,提高学生从别人经验中找到解决问题的新途径的悟性,初步培养工程意识和创新能力。 6.对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。

【1】设计题目 简易计算器 【2】设计要求 1)独自一人完成课程设计,不得抄袭。 2)应用自己所学课程知识完成对计算器的基本任务。 3)查阅相关资料,学习和掌握项目中涉及的新知识,提高自学能力。 4)通过应用java程序编写计算器来提升自己对简单的图形界面有一定的掌握和了解。 5)设计的简易计算器应能够实现+-×÷求倒数等基本运算功能,类似于Windows中的计算器。 6)设计一个简单,亲和图形界面(GUI)的计算机应用程序

相关文档
相关文档 最新文档