文档库 最新最全的文档下载
当前位置:文档库 › 计算器课设五位数连续运算

计算器课设五位数连续运算

计算器课设五位数连续运算
计算器课设五位数连续运算

实习报告

专业:

班级:12级3班

姓名:

学号:

指导教师:

题目:计算器

一、实习目的

1.掌握电子电路的设计规律及方法,能够根据要求设计原理图和PCB

2.熟悉常用电子元件的特点,掌握基本工具的使用方法和电路焊接的技巧3.掌握单片机C语言程序设计方法,能够编写程序并实现功能

二、实习内容

1.以单片机为核心设计计算器的电路,绘制原理图和PCB

2.在电路板上焊接元件并实现计算器的硬件电路

3.编写调试单片机程序,实现计算器

三、实习步骤

计算器设计要求:

功能:可实简易计算器功能,能够进行连续计算。

要求: 以单片机最小系统为基础,利用键盘输入数字(1~5位,整数),按下UP 键(表示“+”),再输入数字(1~5位,整数),最后按下ENTER键(表示“=”)可实现加法运算;同理,利用DOWN键(表示“-”),可实现减法运算;按下BACK键清除显示可重新计算;还可以进行连续计算,即算出某个运算结果后再次按下UP键或DOWN键可利用此结果继续计算;显示用数码管实现,通过两片74HC573驱动数码管。

引脚:单片机P2.0~P2.7接CON10的D0~D7, 单片机P3.4接CON10的DUAN,单片机P3.5接CON10的WEI,按键电路接单片机P1口。

1、计算器的电路设计

Protel DXP 简介:

Protel DXP在前版本的基础上增加了许多新的功能。新的可定制设计环境功能包括双显示器支持,可固定、浮动以及弹出面板,强大的过滤和对象定位功能及增强的用户界面等。Protel DXP是第一个将所有设计工具集于一身的板级设计系统,电子设计者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。Protel DXP运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特点,能够处理各种复杂的PCB设计过程。通过设计输入仿真、PCB 绘制编辑、拓扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP

提供了全面的设计解决方案。

Altium Designer是Altium公司于2004年推出的电路设计软件版本,该软件能实现从概念设计,顶层设计直到输出生产数据以及这之间的所有分析验证和设计数据的管理。当前比较流行的Protel 98、Protel 99 SE和ProtelDXP,就是它的前期版本。AltiumDesigner2004已不是单纯的PCB(印制电路板)设计工具,而是由多个模块组成的系统工具,分别是SCH(原理图)设计、SCH(原理图)仿真、PCB(印制电路板)设计、Auto Router(自动布线器)和FPGA设计及嵌入式软件开发等,覆盖了以PCB为核心的整个物理设计。该软件将项目管理方式、原理图和PCB图的双向同步技术、多通道设计、拓朴自动布线以及电路仿真等技术结合在一起,为电路设计提供了强大的支持。

与较早的版本——Protel99相比,Altium Designer 2004不仅在外观上显得更加豪华、人性化,而且极大地强化了电路设计的同步化,同时整合了VHDL和FPGA 设计系统,其功能大大加强了。

Protel DXP 主要特点:

1 、通过设计档包的方式,将原理图编辑、电路仿真、PCB 设计及打印这些功能有机地结合在一起,提供了一个集成开发环境。

2 、提供了混合电路仿真功能,为设计实验原理图电路中某些功能模块的正确与否提供了方便。

3 、提供了丰富的原理图组件库和PCB 封装库,并且为设计新的器件提供了封装向导程序,简化了封装设计过程。

4 、提供了层次原理图设计方法,支持“自上向下”的设计思想,使大型电路设计的工作组开发方式成为可能。

5 、提供了强大的查错功能。原理图中的ERC (电气法则检查)工具和PCB 的DRC (设计规则检查)工具能帮助设计者更快地查出和改正错误。

6 、全面兼容Protel 系列以前版本的设计文件,并提供了OrCAD 格式文件的转换功能。

7 、提供了全新的FPGA 设计的功能,这好似以前的版本所没有提供的功能。

基于功能要求设计的电路原理图如下:

完成的PCB图如下:

2.电路的焊接

①电烙铁的使用方法:

1.准备施焊:

准备好焊锡丝和烙铁。此时特别强调的施烙铁头部要保持干净,即可以沾上焊锡(俗称吃锡)。

2.加热焊件:将烙铁接触焊接点,注意首先要保持烙铁加热焊件各部分,例如印制板上引线和焊盘都使之受热,其次要注意让烙铁头的扁平部分(较大部分)接触热容量较大的焊件,烙铁头的侧面或边缘部分接触热容量较小的焊件,以保持焊件均匀受热。

3.熔化焊料:当焊件加热到能熔化焊料的温度后将焊丝置于焊点,焊料开始熔化并润湿焊点。

4.移开焊锡:当熔化一定量的焊锡后将焊锡丝移开。

5.移开烙铁:当焊锡完全润湿焊点后移开烙铁,注意移开烙铁的方向应该是大致45°的方向。

上述过程,对一般焊点而言大约二,三秒钟。对于热容量较小的焊点,例如印制电路板上的小焊盘,有时用三步法概括操作方法,即将上述步骤2,3合为一步,4,5合为一步。实际上细微区分还是五步,所以五步法有普遍性,是掌握手工烙铁焊接的基本方法。特别是各步骤之间停留的时间,对保证焊接质量至关重要,只有通过实践才能逐步掌握。

②焊接时的技巧及注意事项:

1、选用合适的焊锡,应选用焊接电子元件用的低熔点焊锡丝。

2、助焊剂,用25%的松香溶解在75%的酒精(重量比)中作为助焊剂。

3、电烙铁使用前要上锡,具体方法是:将电烙铁烧热,待刚刚能熔化焊锡时,涂上助焊剂,再用焊锡均匀地涂在烙铁头上,使烙铁头均匀的吃上一层锡。

4、焊接方法,把焊盘和元件的引脚用细砂纸打磨干净,涂上助焊剂。用烙铁头沾取适量焊锡,接触焊点,待焊点上的焊锡全部熔化并浸没元件引线头后,电烙铁头沿着元器件的引脚轻轻往上一挑,离开焊点。

5、焊接时间不宜过长,否则容易烫坏元件,必要时可用镊子夹住管脚帮助散热。

6、焊点应呈正弦波峰形状,表面应光亮圆滑,无锡刺,锡量适中。

7、焊接完成后,要用酒精把线路板上残余的助焊剂清洗干净,以防炭化后的助焊剂影响电路正常工作。

8、集成电路应最后焊接,电烙铁要可靠接地,或断电后利用余热焊接。或者使用集成电路专用插座,焊好插座后再把集成电路插上去。

9、电烙铁应放在烙铁架上。

完成的计算器电路如下:

3.单片机程序的设计

(1)单片机程序设计思想

本组设计程序为计算器,根据C51单片机的特点进行开发,设计思想如下:

1.首先进行输入,根据输入的键盘矩阵编码进行判断是何种类型,主要

分为三种:运算数1和运算数2数据、加减乘除和等号。

2.对每种类型的输入设置标志,如数据:flag1、flag2,若符合要求则相

应位置的标志置1,否则为0,用if 语句进行判断归类。

3.若输入为编码代表等号则表示计算结果,利用switch 语句进行加减

乘除操作。

4.最后为实现本组程序可以连续运算的特点,我们将计算所得结果作为

新的运算数1,只要接下来的输入满足条件即可无限制的进行连续运

算。

基于以上设计思想的程序流程图为:

(2)开发环境软件的基本使用方法

所需软件介绍:keil Protel

Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。

Protel共分5个模块,分别是原理图设计、PCB设计、自动布线器、原理图混合信号仿真、PLD设计。

可生成30多种格式的电气连接网络表;

强大的全局编辑功能;

在原理图中选择一级器件,PCB中同样的器件也将被选中;

同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络

既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性;

支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件; * PCB 可设计32个信号层,16个电源-地层和16个机加工层;

可以输入和输出DXF、DWG格式文件,实现和AutoCAD等软件的数据交换;

智能封装导航(对于建立复杂的PGA、BGA封装很有用);

强大的CAM处理使您轻松实现输出光绘文件、材料清单、钻孔文件、贴片机文件、测试点报告等;

经过充分验证的传输线特性和仿真精确计算的算法,信号完整性分析直接从PCB启动;

反射和串扰仿真的波形显示结果与便利的测量工具相结合;

1.原理图设计过程

a.进入原理图编辑器:选File-New产生设计项目*.DDB和选Sch Document设计,产生空文件SHEET1.SCH进入原理图编辑器;

b.设置图纸大小:选Design-Option-Sheet Options 中选Standard Style来确定画图图纸大小;

c.放置元件

(1)首先打开软件自带元件库,引入当前Sch编辑器,选

Design-Add/Remov Library命令,一般选用如下元件库即可:Progrom Files\Design Exployer99\Library\Sch\Protel Dosschematic Libraoies.ddb和Sim.ddb,然后可用Browse Sch 浏览、编辑、放置元件;

(2)用Place下的"Par"命令放置或用元件管理器中选指定元件来放置,若库中无此元件,建议在元件管理器中通过编辑相似元件(管脚数一样的元件)来产生所要的元件;

(3)连接电路:放置完元件后,应对元件进行线连接,使用Place中"Wires"命令来放置导线,成为完整的电路,即完成原理图的设计过程。

2.生成网络表

网络表是连接原理图和PCB图的中间文件,表述了原理图中元件的电气连接,存有元件定义、网络节点定义等信息,有了网络表就可以进行PCB板自动布局,自动布线,ERC校验和人工布线。网络表生成的方法:在原理图设计完后,双击右键选"生成网络表"(Create Netlist),成功后产生*.NET文件,网络表文件必要时可直接修改。

3.PCB板设计

(1)进入PCB编辑器:File中选New,并选PCB Document设计,产生PCB1空文件,双击此文件进入PCB编辑器;

(2)设置格点大小和设计层

a.双击右键选择"Options"的电路板设置(Board Options),设置纲格大小,解决元件精确定位,现设Snap为20mil;

b.选择设计层,在Layers栏下选择当前编辑设计的层面,共有16个层面,可根据需要开放多个层面,一般常用层面有:TOP层、BOTTOM层、KEEPOUT 层、TOPOVERLAY层;

(3)设置相对原点和PCB制作区域:本设置应在禁止布线层确定,先将禁止布线层(KEEPOUT)切换为当前层,然后根据PCB板大小要求,画边框框出制板区域;选编辑"EDIT"栏中Origin项,用Set设置相对原点:移动光标到框左下角,按鼠标右键设置原点,此点坐标为0,0。

(4)引入元件封装库

将原理图中各元件定义的元件封装所在库引入当前PCB编辑器,方法为:选Design-Add/Remove library命令添加软件自带或自制元件封装库,一般选用如下库:Design Explarer 99\Library\Pcb\Generic

Footprints\Advpcb.ddb。

(5)引入网络表

为了使元件自动从封装库引入PCB编辑器和自动布局、自动布线、须先将网络表引入,一般过程如下:

a.将顶层(top)切换成当前层;

b.选择Design莱单中"引入网络表"(Netlist)选项,指定网络表文件名,引入过程中显示网络名和错误报告,若引入网络表无问题,则在状态(Status)栏中会显示"所有宏巳经生效"(All Macros Validated),若有错,则应回到原理图编辑器查原理图问题和重新生成网络表,再尝试引入网络表,直至无错误为止;

c.成功引入网络表后,鼠标左键单击"Execute",引入元件封装至PCB编

辑区,此时各元件堆在一起,可用如下命令拉开元件进行布局:

(a)用自动布局命令;

(b).用Edit-move-move或用Drag和Component命令;

(c)用推挤法(Shove):选Tools-Align Component-Shove系统自动分开重叠元件;

(d)用分类排列法:选Tools-Align Component-Sort and Array Component-All Component命令,系统自动完成元件分离、分类和排列工作。

(6)布局

由系统将所有元件封装按一定规则进行自动布局后,在此基础上用户可按如下规则再次进行人工布局:

a.按原布局设计方案进行人工布局;

b.按元件逻辑连接顺序来进行人工布局;

c.按元件逻辑连接顺序和PCB板形状来人工布局;

d.按元件特点:大,小,高,低,屏蔽性要求,外连接要求来布局;

e.自动布局命令:选Tools-Auto Place,系统显示自动布局参数设置,回答Ok即可,系统自动布局并显示布局进程和元件移动次数。

(7)布线

当调整好布局后,可以进行人工或自动布线,其操作过程如下:

a.设置自动布线规则

选Design-Rules,显示布线规则对话框,应完成如下几项设置,主要应设置好前二项:

(a).布线(Routing)-应设置导孔形式,表面安装距离,导线宽度,线安全间隔,导线转角,布线开放板层(单面,双面,多层板设计指定),布线优先次序,拓扑规则;

(b).制造(Manufacturing)-应设置最小夹角,边界设置,最小直径

差,SMD焊点延伸量,敷铜方式,电源层安全距离,电源层连接方式,阻焊层焊点延伸量;

(c).高速(High Speed);

(d).放置(Placement);

(e).信号间隔(Signal Integrity);

(f).其它(Other)。

b. 人工布线

以上设置完成后,就可以进行人工布线,线径、线距按设置要求,布线中若违反设置规定,则显示绿色作为警示,若想连接无关系的二点,系统排斥

这类操作。自动布线则还要进行如下设置。

c. 自动布线设置:选AutoRoute-Setup,系统显示自动布线设置栏,用户应选择设置"布线策略"(Routing Passes)和测试点(TestPoints)二项内容。

d. 自动布线操作

选AutoRoute-All选项,糸统按设置进行自动布线,布线完毕,用户可根据需要调整布线结果,完成正规PCB板设计。一般应有如下修改操作:

(a).修改线的粗,细;

(b).增加各类搏助线;

(c).为了提高板的可靠性,人工减少过孔;

(d).增加设定定位孔,安装孔等;

(e).增加敷铜(要求敷铜同过孔,焊盘,线之间间隔应设成大于0.8mm),屏蔽线等。

(8)PCB板图文件输出

为了将PCB板图送去工厂制板,需输出一个*.PCB文件,输出过程如下:

a. 在PCB编辑器下,打开PCB1文件;

b. 选File-Export命令,指定输出文件名,存放位置,将PCB板图保存输出,此文件作为制板文件交送制板厂家。

(4)单片机C语言源程序

#include

#define uchar unsigned char

#define uint unsigned int

#define duan P2//数码管显示段选定义

#define wei P2//数码管显示位选定义

#define key P1//键盘接口定义

sbit xwei = P3^5;

sbit xduan = P3^4;

unsigned long shu,shz,shuz,shuz1,shu1,i,shu2,shz3,shuz3,shz5,shuz5,shz4,shuz4,shz6,shuz6,xshu,sh z7,shuz7;//进行运算的两个变量数

uchar num;////键盘扫描返回值

char flag1,fuhao,fhao ,flag2,flagf,flagl,flagLJ1,flagLJ2; //fuhao运符

unsigned char code Wela[]={0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //六位数码管的位选unsigned char code Duan[]={0x3f,0x06,0x5b,

// 0 1 2

0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};

// 3 4 5 6 7 8 9 无显示共阴极数码管

uchar keyscan();//键盘扫描函数

void weixz();

void duanxz();

void displayshu(unsigned long);

void delay(uint i)//延时函数

{

while(i--);

}

/***********************************************

主函数

************************************************/

void main()

{

shu=100;

xshu=0;

shu1=0;

shu2=0;

flag1=0;

flag2=0;

flagf=0;

flagl=0;

while(1)

{

////////////////////////////////////////////////

shu=keyscan();

if( (shu<10)&&flag1==0&&flag2==0&&flagf==0&& flagLJ1==0)

{

shu1=shu;

flag1=1;

displayshu(shu1);

flagLJ1=1;

for (i=1;i<200;i++)

{

delay(500);

}

}

else if((shu<10)&&flag1==1&&flag2==0&&flagf==0&& flagLJ1==1)

{

shu1=shu1*10;

shu1=shu+shu1;

flag1=1;

displayshu(shu1);

flagLJ1=1;

}

//////////////////////////////////////////////////

if (shu==13 && flag1==1&&flagf==0) {

fuhao=shu;

wei=0xef;

weixz();

duan=Duan[0];

duanxz();

flagf=1;

}

if (shu==12 && flag1==1&&flagf==0) {

fuhao=shu;

wei=0xdf;

weixz() ;

duan=Duan[0];

duanxz();

flagf=1;

}

////////////////////

if (shu==15 && flag1==1&&flagf==0) {

fuhao=shu;

wei=0xdf;

weixz() ;

duan=Duan[0];

duanxz();

flagf=1;

}

/////////chu///////////////

if (shu==11 && flag1==1&&flagf==0) {

fuhao=shu;

wei=0xdf;

weixz() ;

duan=Duan[0];

duanxz();

flagf=1;

}

/////////////////////////////////////////////////

if( (shu<10) && flag1==1&& flagf==1&& flagLJ2==0)

{

shu2=shu;

flag2=1;

flagLJ2=1;

displayshu(shu2);

}

else if ((shu<10)&&flag1==1&&flag2==1&&flagf==1&&flagLJ2==1)

{

shu2=shu2*10;

shu2=shu+shu2;

flag2=1;

displayshu(shu2);

}

/////////////////////////////////////////////

if (shu==10 && flag1==1 && flag2==1&& flagf==1)

{

switch (fuhao)

{

case 13: shu1=shu2+shu1; break;

case 12: shu1=shu1-shu2; break;

case 15:shu1=shu1*shu2;break;

case 11: shu1=shu1/shu2; break;

}

shu2=0;

flag1=1;

flag2=0;

flagf=0;

flagLJ1=0;

flagLJ2=0;

displayshu(shu1);

}

if (shu==14)

{

shu1=0;

shu2=0;

flag1=0;

flag2=0;

flagf=0;

flagLJ1=0 ;

flagLJ2=0;

displayshu(0);

}

}

}

///////////////键盘扫描///////////////// uchar keyscan()

////// 1

key=0xfe;

if(key!=0xfe)

{

delay(500);

if(key!=0xfe)

{

switch(key)

{

case 0xee:num=7 ;break;

case 0xde:num=8 ;break;

case 0xbe:num=9 ;break;

case 0x7e:num=13;break; //"/"

}

return num;

}

}

////// 1

////// 2

key=0xfd;

if(key!=0xfd)

{

delay(500);

if(key!=0xfd)

{

switch(key)

{

case 0xed:num=4 ;break;

case 0xdd:num=5 ;break;

case 0xbd:num=6 ;break;

case 0x7d:num=12;break; //*

}

return num ;

}

}

////// 2

////// 3

key=0xfb;

if(key!=0xfb)

delay(500);

if(key!=0xfb)

{

switch(key)

{

case 0xeb:num=1 ;break;

case 0xdb:num=2;break;

case 0xbb:num=3;break;

case 0x7b:num=11;break;

}

return num ;

}

}

////// 3

////// 4

key=0xf7;

if(key!=0xf7)

{

delay(500);

if(key!=0xf7)

{

switch(key)

{

case 0xe7:num=0;break;

case 0xd7:num=15;break;

case 0xb7:num=14;break;

case 0x77:num=10;break;

}

return num ;

}

}

for (i=1;i<30;i++)

{

delay(1600);

}

}

void weixz()

{

xwei=1;

delay(1);

xwei=0;

}

void duanxz()

{

xduan=1;

delay(1);

xduan=0;

}

void displayshu(shu)

{ if (shu<10)

{

wei=0xfe;

weixz() ;

duan=Duan[shu];

duanxz();

delay(5000);

}

else if (shu>9 &&shu <100 )

小学四年级(上)数学 用计算器探索规律 单元测试卷

小学四年级(上)数学用计算器探索规律单元测试卷 一、单选题 1.用计算器计算 (136+313)×426=() A. 116224 B. 144721 C. 191274 D. 122661 2.按下列规律印刷笑脸图案,第8副图案有()个笑脸. A. 8 B. 32 C. 36 3.先用计算器算出前面四道的得数,再直接填出最后一道题的答案。() A. 9;108;1107;11106;11111103 B. 9;18,27;36;63 C. 9;108;1107;11106;1111105 4.用计算器计算 一个养鸡场,去年出售山鸡38600只,留下的比售出的少16000只.养鸡场去年共养山鸡() A. 54600只 B. 22600只 C. 61200只 D. 34233只 二、判断题

5.键是开机键。 6.现在人们普遍用计算器和算盘进行计算。 7.判断对错用(计算器计算) x÷360=173 x=360×173 x=62280 三、填空题 8.找出规律填数。 数列:1、4、9、16、________、36。 9.找规律,填数字。 22;24;________;________;30;________。 10.2 4 6 8 (________) (________ ) 14 (________) 11.用计算器计算 7029+9954=________ 12.用计算器算一算: 12345679×9=________ 12345679×18=________ 12345679×27=________ 12345679×36=________ 你发现了什么规律? 四、解答题 13.列式计算. 两个加数都是7869,和是多少?

汇编语言程序设计————计算器

课程设计说明书 题目: 表达式计算器 学号: 班级: 计算机创新实验班 姓名:廖福轩 目录 一.设计内容 (2) 二.设计方案 (2) 1、主程序模块、 (2) 2、赋权值模块、 (2) 3、加减乘除运算子程序模块、 (2) 4、调用赋权宏子程序模块、 (2) 5、回车换行宏模块、 (2) 6、9号功能显示字符串宏模块、 (2) 三.设计框图 (3) 四.程序代码 (4) 五.运行结果 (9) 六.设计总结 (9) 计算器汇编语言程序设计 一.设计内容 从键盘输入一个十进制两位数的四则运算表达式,如23*56-(8*19)/6+67-8=,编程计算表达式的值,输出十进制结果(有可能就是三位或四位十进制),+-*/位置任意。并要求

程序能反复执行直道对“还要继续不?(y/n)”之类的提示回答“n”或“N”为止。 四则运算主要包括以下几个模块: (1)主程序模块、 (2)赋权宏模块、 (3)加减乘除运算子程序模块、 (4)调用赋权宏子程序模块、 (5)回车换行宏模块、 (6)9号功能显示字符串宏模块、 二.设计方案 1、主程序模块、 主程序初始化数据段,调用显示宏show显示界面,输入字符或数字并判断,调用子程序dyfq调用赋权宏fq为符号赋权,从而判断优先级,调用加减乘除运算子程序ys对判断出的相应运算符进行运算,输出运算结果,判断就是否继续,继续则返回输入,不继续则退出程序、 2、赋权宏模块、 通过定义宏fq,定义了变元a,b进行参数传递,并使用替换运算符&使变元a与标号s对应、接着给对应的符号赋予权值,将其权值存入ch中、 3、加减乘除运算子程序模块、 运算模块实现了将ax入栈保存,然后将ax,bx赋值为0,判断cl中的符号就是否为乘号*,若为乘号*则将number中的数字与其下一位的数字相乘,并把结果存入该位置,类似的若不为乘号*则接着判断就是否为除号/,若为除号/则进行除法运算,然后判断就是否为加法,为加法则进行加法运算,接着判断就是否为减法,为减法则进行减法运算并将结果存入当前的计算的第二个数的位置、 4、调用赋权宏子程序模块、 该模块实现了调用赋权宏fq为(,),*,/,+,-,=等符号分别赋权值为5,1,4,4,3,3,0、从而可以通过设定的权值来判断优先级、 5、回车换行宏模块、 通过2号功能的输出功能,将0dh赋予dl输出,再调用2号功能,将0ah赋予dl输出,从而实现回车换行功能、 6、9号功能显示字符串宏模块、 通过定义宏show,用9号显示功能,通过变元str将字符串显示出来。 三.设计框图

【人教版】六年级下册数学单元六_1_2第3课时《估算、用计算器计算及借助计算器找规律计算》教案设计

教案设计 课前准备 教师准备PPT课件 学生准备计算器 教学过程 ⊙谈话导入 估算在生活中的应用非常广泛,计算器为人们解决具体计算问题、发现数学规律带来了便利。这节课我们主要来复习估算、用计算器计算及借助计算器找规律计算。(板书课题:估算、用计算器计算及借助计算器找规律计算) ⊙回顾与整理 1.估算。 (1)什么叫估算?一般怎样估一个数? ①对事物的数量或计算结果作出粗略的推断或估计叫估算。 ②估算一般用“四舍五入”法,把这个数估成整十、整百、整千……的数,使它与实际结果相差最少。 (2)举例说明:加法、减法、乘法、除法的估算各应怎样进行? ①加法估算是把加数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数求和。 例如:1586+3769≈6000 ②减法估算是把被减数和减数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数求差。 例如:5160-3178≈2000

③乘法估算分两种情况。 a.一个乘数是一位数的乘法估算,把另一个乘数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数和这个一位数相乘。 例如:816×3≈2400 b.一个乘数是两位数的乘法估算,把两个乘数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用两个近似数相乘。 例如:816×33≈24000 ④除法估算分两种情况。 a.除数是一位数的除法估算,如果被除数最高位上的数够除,就用“四舍五入”法把被除数最高位后面的尾数省略;如果被除数最高位上的数不够除,就用“四舍五入”法把被除数前两位后面的尾数省略,求出近似数,然后求商。 例如:8632÷3≈3000632÷9≈70 b.除数是两位数的除法估算,先分别求出除数和被除数的近似数,把除数十位后面的尾数“四舍五入”;如果被除数最高位上的数比除数十位上的数大,就把被除数最高位后面的尾数“四舍五入”;如果被除数最高位上的数比除数十位上的数小,就把被除数前两位后面的尾数“四舍五入”,再求这两个近似数的商。 例如:898÷31≈30(898≈900,31≈30) 538÷62≈9(538≈540,62≈60) (3)如何用估算解决问题? 预设 生1:应该具体问题具体分析,根据要解决的具体问题选择适当

android开发计算器设计开发报告

《安卓开发》程序设计报告 题目简单计算器开发 专业(班级)网工111班 姓名张波波 学号5(qq) 指导教师赵(老师) 日期 目录 一、设计说明:2 1.设计内容:Android简单应用程序开发,简单计算器。2 2程序说明:2 二、开发环境:3 三、概要设计:3 系统的总体3 四、程序流程和系统功能设计3 程序流程设计3 .系统功能设计4 基于Android平台系统具体设计4 总体模块详细设计5 输入模块详细设计 5

显示模块详细设计6 计算模块详细设计 6 五、计算器系统实现7 Android应用程序构成7 六、截图说明 8 1、图标8 2界面8 3运算界面9 4错误输入9 5设计平台界面10 6签名导出apk 10 七、总结 11 课程设计任务书 一、设计说明: 1.设计内容:Android简单应用程序开发,简单计算器。 2程序说明: 1、计算器界面友好,方便使用。 2、具有基本的加、减、乘、除功能,还有+—、开方、平方功能。能够判断用户输入运算数是否正确。4、 支持小数运算。 具有退格功能,能够删除最后一个输入,ce。 具有清除功能,删除所有,c。 具有结果存储功能,能够显示存储器状态,支持触屏手机。 支持最低版本,最高版本。开发时为

二、开发环境: 开发环境:本系统是采用Eclipse+EclipseMe+JDK+ADT作为开发平台。事实上为了节约时间就直接用Google公司安给的直接绑定好的adt-bundle-windows-x86_64开发,只需要配置下环境变量,无需要关联等操作。 三、概要设计: 系统的总体 整个程序基于android技术开发,出总体模块外主要分为输入模块、显示模块以及计算模块(包括一些其她功能)这三大部分。在整个系统中总体模块控制系统的生命周期,输入模块部分负责读取用户输入的数据,显示模块部分负责显示用户之前输入的数据以及显示最终的计算结果,计算模块部分负责进行数据的运算以及一些其她的功能。 总体模块的作用主要是生成应用程序的主类,控制应用程序的生命周期。输入模块主要描述了计算器键盘以及键盘的监听即主要负责读取用户的键盘输入以及响应触屏的按键,需要监听手机按键动作以及用指针事件处理方法处理触屏的单击动作(以松开按键为准)。同时提供了较为直观的键盘图形用户界面。 显示模块描述了计算器的显示区,即该区域用于显示用户输入的数据以及最终的计算结果,同时还负责显示一些其她的信息。 计算模块则主要描述了计算器的整体,实现了计算器的界面,负责计算用户输入数据,包括加、减、乘、除、等各种计算功能,记忆数据的相关功能,退格以及清零的功能。 四、程序流程和系统功能设计 程序流程设计 知道了系统的功能以后,我们通过来建立显示界面,完成后系统开始监听用户的按键输入,每次输入系统都会判断一次用户输入的类型,是数字还是运算符号或者是清除,判断完后分成不同类型如数字,符号,基本运算等等进行进一步的处理,根据用户的要求继续进行下一步的操作,最后计算出最终结果并显示在显示区。 系统流程图如图4-1所示:

基于51单片机的计算器设计程序代码汇编

DBUF EQU 30H TEMP EQU 40H YJ EQU 50H ;结果存放 YJ1 EQU 51H ;中间结果存放GONG EQU 52H ;功能键存放 ORG 00H START: MOV R3,#0 ;初始化显示为空MOV GONG,#0 MOV 30H,#10H MOV 31H,#10H MOV 32H,#10H MOV 33H,#10H MOV 34H,#10H MLOOP: CALL DISP ;PAN调显示子程序WAIT: CALL TESTKEY ; 判断有无按键JZ WAIT CALL GETKEY ;读键 INC R3 ;按键个数 CJNE A,#0,NEXT1 ; 判断就是否数字键 LJMP E1 ; 转数字键处理NEXT1: CJNE A,#1,NEXT2 LJMP E1 NEXT2: CJNE A,#2,NEXT3 LJMP E1 NEXT3: CJNE A,#3,NEXT4 LJMP E1 NEXT4: CJNE A,#4,NEXT5 LJMP E1 NEXT5: CJNE A,#5,NEXT6 LJMP E1 NEXT6: CJNE A,#6,NEXT7 LJMP E1 NEXT7: CJNE A,#7,NEXT8 LJMP E1 NEXT8: CJNE A,#8,NEXT9 LJMP E1 NEXT9: CJNE A,#9,NEXT10 LJMP E1 NEXT10: CJNE A,#10,NEXT11 ;判断就是否功能键LJMP E2 ;转功能键处理NEXT11: CJNE A,#11,NEXT12 LJMP E2 NEXT12: CJNE A,#12, NEXT13 LJMP E2

安卓计算器开发实验报告

上海电力学院 嵌入式WebOS应用开发 实验报告 实验名称:使用Android Developer SDK开发应用程序 专业: 姓名: 班级: 学号:

一、作品的运行环境及安卓SDK基础操作 SDK Android Developer是一款在windows系统上运行的针对Android应用开发的谷歌官方软件(需要JAVA环境支持)。 1、导入工程 2、建立虚拟机 在运行虚拟机是为保证机器的顺畅运行建议选择分辨率较低的虚拟机,但是其RAM最好设为512MB,因为部分程序如果调用资源过大会导致虚拟机无法运行。

3、虚拟机界面 二、作品介绍 我的应用是一个计算器。能实现包括小数的加减乘除运算,结果过大会自动用科学记数法表示,另外还有退格跟清屏功能键。

三、编程以及运行调试 (一)、在MyDesktop主界面中添加应用图标 1. 首先在我的桌面上添加你应用的图标以及文字,双击 图标后就可以看见对应的代码,可直接在代码中进行修改图片文字的大小颜色等等。 以下是对应图像图标的代码

图片可以在左侧的选 项中自行进行挑选; 也可以添加自己的图片, 只要将图片放到对应的 文件夹之下在刷新就可 以,但不建议放分辨率 过高图片可能会出现超 出界面的等错误。 (二)、在res/layout目录下新建.xml文件,由于计算器的按钮很多,要在xml界面中添加排版: xml代码首末的格式较为自由可以直接在界面中拖动图标位置以及修改大小,而其他layout则更会自动排列,各有优劣。 (三)、在src/weibo.test.ui目录下新建.java文件,计算器的按钮

android开发计算器设计开发报告

Xx大学计算机与电子 信息学院《移动编程 技术》安卓程序开发 设计报告---简单计算 器 《安卓开发》程序设计报告 题目简单计算器开发 专业(班级) 网工111班 姓名张波波 学号952937885(qq) 指导教师赵(老师) 日期2014.5.7

目录 一、设计说明: (3) 1.设计内容:Android简单应用程序开发,简单计算器。 (3) 2程序说明: (3) 二、开发环境: (3) 三、概要设计: (3) 3.1 系统的总体 (3) 四、程序流程和系统功能设计 (4) 4.1程序流程设计 (4) 4.2.系统功能设计 (5) 4.3基于Android平台系统具体设计 (6) 4.3.1 总体模块详细设计 (6) 4.3.2 输入模块详细设计 (6) 4.3.3 显示模块详细设计 (7) 4.3.4 计算模块详细设计 (7) 五、计算器系统实现 (8) 5.1 Android应用程序构成 (8) 六、截图说明 (9) 1、图标 (9) 2界面 (10) 3运算界面 (11) 4错误输入 (11) 5设计平台界面 (12) 6签名导出apk (12) 七、总结 (13)

课程设计任务书 一、设计说明: 1.设计内容:Android简单应用程序开发,简单计算器。 2程序说明: 1、计算器界面友好,方便使用。 2、具有基本的加、减、乘、除功能,还有+—、开方、平方功能。 3、能够判断用户输入运算数是否正确。 4、 4、支持小数运算。 5、具有退格功能,能够删除最后一个输入,ce。 6、具有清除功能,删除所有,c。 7、具有结果存储功能,能够显示存储器状态,支持触屏手机。 8、支持最低版本2.0,最高版本4.4。开发时为4.2 二、开发环境: 开发环境:本系统是采用Eclipse+EclipseMe+JDK+ADT作为开发平台。事实上为了节约时间就直接用Google公司安给的直接绑定好的adt-bundle-windows-x86_64开发,只需要配置下环境变量,无需要关联等操作。 三、概要设计: 3.1 系统的总体 整个程序基于android技术开发,出总体模块外主要分为输入模块、显示模块以及计算模块(包括一些其她功能)这三大部分。在整个系统中总体模块控制系统的生命周期,输入模块部分负责读取用户输入的数据,显示模块部分负责显示用户之前输入的数据以及显示最

单片机-- 简易计算器汇编程序

NAME T11 单片机--简易计算器汇编程序 ;将键盘的KA10~KA12接8259的KA0~KA2;RL10~RL17接8255A的RL0~RL7 ; T11 8279键盘显示接口实验二 CSEG AT 0000H LJMP START CSEG AT 4100H START: MOV DPTR,#00CFE9H ;8279命令字 MOV A,#0D1H ;清显示 MOVX @DPTR,A LOOP1: MOVX A,@DPTR ANL A,#0FH JZ LOOP1 ;有键按下?没有则循环等待 MOV A,#0A0H ;显示\消隐命令 MOVX @DPTR,A MOV A,#40H ;读FIFO命令 MOVX @DPTR,A MOV DPTR,#0CFE8H ;读键值 MOVX A,@DPTR MOV R1,A ;保存键值加个F MOV DPTR,#0CFE9H ;写显示RAM命令 MOV A,#80H ;选中LED1 MOVX @DPTR,A MOV A,R1 ANL A,#0FH ;取后半字节 MOV DPTR,#TAB MOVC A,@A+DPTR ;取段显码 MOV DPTR,#0CFE8H ;写显示RAM MOVX @DPTR,A MOV DPTR,#0CFE9H ;写显示RAM命令 LOOP2: MOVX A,@DPTR ;输入显示符号 ANL A,#0FH JZ LOOP2 ;有键按下?没有则循环等待 MOV A,#0A0H ;显示\消隐命令 MOVX @DPTR,A MOV A,#40H ;读FIFO命令 MOVX @DPTR,A MOV DPTR,#0CFE8H ;读键值 MOVX A,@DPTR MOV R2,A ;保存键值 MOV DPTR,#0CFE9H ;写显示RAM命令 MOV A,#81H ;选中LED2 MOVX @DPTR,A MOV A,R2 ANL A,#0FH ;取后半字节

新苏教版数学四年级下册四用计算器计算单元检测卷(含答案)

苏教版数学四年级下册四用计算器计算单元检测卷(含答案) 一、填空题。 1.在计算器上,先按2再按4,显示器上是(),接着按×,显示器上是(),再接着按5,显示器上是() 2.在计算器上进行如下操作:12×,计算器上显示(),继续输入:13015=结果是()。 二、用计算器计算并填一填。 三、用计算器计算下面各题。 67×99+67×2=3000-56×48= 1960÷(2198-2142)=3702-(1632-980)= 5000-89×25=178×320-197= 四、用计算器计算并找规律填数。 1.11×99= 111×999= 1111×9999= ×= 2.15×15= 25×25= 35×35= ×= 3.9×9= 99×99= 999×999= ×= 4.12×11= 23×11= 34×11= ×=

五、用计算器解决问题。 1.下面是东升小学食堂购买食品的一张发票。算一算购买这些物品的钱。把结果填在发票中。客户名称:东升小学开票日期:2011年10月8日 购物项目单位数量 单价 /元 金额 千百十元角分 大米袋2098 猪肉千克15014 食油桶875 味精袋1518 合计 2.一颗人造地球卫星2小时可以飞行56880千米,一架客机4小时可以飞行2844千米。这颗人造地球卫星飞行的速度是这架客机的几倍? 3.大众食堂原有2500千克大米,又运来67袋,每袋25千克。 (1)食堂现在有多少千克大米? (2)如果每天大约要用250千克大米,现在这些大米大约能用多少天? 4.东兴希望小学组建了一支排球队,共有12名队员,平时训练时分两组,两组队员的体重情况如下。(单位:千克) 甲组:302435433531 乙组:282732332931 (1)分别求出两组队员的平均体重。

android开发——简易计算器的设计报告

简易计算机的设计 摘要:Android是当今最重要的手机开发平台之一,它是建立在Java基础之上的,能够迅速建立手机软件的解决方案。Android的功能十分强大,成为当今软件行业的一股新兴力量。Android基于Linux平台,由操作系统、中间件、用户界面和应用软件组成,具有以下5个特点:开放性、应用程序无界限、应用程序是在平等条件下创建的、应用程序可以轻松的嵌入网络、应用程序可以并行运行。 一、实训目的 1、了解Android系统,学会Android开发环境的搭建。 2、了解E clipse,学会用E clipse和Java 开发一个Android程序。 3、进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性,能够熟练的应用面向对象的思想和设计方法解决实际问题的能力。 4、巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、Editplus、Eclipse、JCreator等开发工具的运用,拓宽常用类库的应用。 二、实训任务 1、Activity的相关知识 简单理解Activity 代表一个用户所能看到的屏幕,Activity 主要是处理一个应用的整体性工作。Activity是最基本的Android 应用程序组件,应用程序中,一个活动通常就是一个单独的屏幕。每一个活动都被实现为一个独立的类,并且从活动基类中继承而来,活动类将会显示由视图控件组成的用户接口,并对事件做出响应。大多数的应用是由多个屏幕显示组成,因而要用到多个Activity。 (1)Activity的相关方法及相关函数:void onCreate(Bundle)首次启动时调用,接受参数:Null or savedInstanceState(保存的以前某些状态信息);void onStart() 说明了将要显示给用户的活动;void onRestart()将处于停止状态的活动重新显示给用户;void onResume()用户可以开始与活动进行交互时

2位数计算器程序-汇编语言课程设计

信息学院课程设计题目:2位数计算器程序设计 __ 姓名: __ _____ 学号: ____ ___ 班级: 课程:汇编语言 ________ 任课教师:侯艳艳 ____ 2011年12月

课程设计任务书及成绩评定

目录 摘要 (2) 1.设计目的………………………………………………………………………………………………?2 2.概要设计………………………………………………………………………………………………?3 2.1系统总体分析…………………………………………………………………………?3 2.2程序流程图 (3) 3.详细设计......................................................................................................? (4) 3.1主程序及子程序说明 (4) 3.2程序代码编写 (4) 4.程序调试 (6) 4.1运行界面分析 (6) 4.2算法的分析 (6) 4.3调试过程及分析 (6) 5.心得体会 (7) 5.1设计体会...................................................................................................? (7) 5.2系统改进...................................................................................................? (7) 参考文献 (8)

安卓计算器开发实验报告

嵌入式WebOS应用开发 实验报告 实验名称:使用An droid Developer SDK开发应用程序 专业:_________________________ 姓名:__________________________________ 班级:_______________________________ 学号:______________________________ 一、作品的运行环境及安卓SDK基础操作 SDK An droid Developer 是一款在windows系统上运行的针对 An droid应用开发的谷歌官方软件(需要JAVA环境支持)。 1、导入工程 2、建立虚拟机 在运行虚拟机是为保证机器的顺畅运行建议选择分辨率较低的虚拟机,但是其RAM最好设为512MB因为部分程序如果调用资源过大会导致虚拟机无法运行。 3、虚拟机界面 二、作品介绍 我的应用是一个计算器。能实现包括小数的加减乘除运算,结果过大会自动用科学记数法表示,另外还有退格跟清屏功能键。

加应用图标 1.首先在我的桌面上添加你应 用的图标以及文字,双击图标后 项中自行进行挑选; 也可以添加自己的图片, 只要将图片放到对应的 文件夹之下在刷新就可 以,但不建议放分辨率 过高图片可能会出现超 出界面的等错误。 要在xml 界面中添加排版: xml 代码首末的 格式较为自由可以直接在 界面中拖动图标位置以及修改大小,而其他layout 则更会自动排列, 各有优劣。 三、 编程以及运行调试 (一)、在MyDesktop 主界面中添 fin^_ok,prig 世IF it launchiWipng 32E img'O.png jdE im^il.png] 3E img?.pHg 血 imql.pngi 32E img4.png 血 im^S.pngi Tn? imgg.png JJL -mgT.pngj ..1. imy^.png ..1. uiHiprxg 就可以看见对应的代码, 可直接 在代码中进行修改图片文字的 大小颜色等等。 以下是对应图像图标的代码 图片可以在左侧的选 (二)、在 res/layout 目录下新建.xml 文件,由于计算器的按钮很多, TIF charfrc 起 ch^tfrorn_bg_ipTW5&d !S'.pflg ~l <+i?,kbnif^M 口 .股 ch?kbojco#f bsckgrourid^na SE chfkb rn (」]n.hewlcgin 口unci 岱n 评 弧 tlwr^na TTF de^ r o 1 .pnq

最新人教版四年级上册数学《用计算器计算》教学设计

9 用计算器计算 一课时 教学内容 用计算器计算。(教材第26~29页) 教学目标 1.使学生会用计算器进行加、减、乘、除等基本四则运算。 2.通过运用计算器解决生活中的实际问题,培养学生的应用意识和解决问题的能力。 3.激发学生探索数学奥妙的兴趣。 4.培养学生的观察、推理能力。 重点难点 重点:计算器的使用方法,正确利用计算器进行计算。 难点:探索计算规律。 教具学具 课件、计算器。 教学过程 一创设情境,激趣导入 师:计算器是目前人们广泛使用的计算工具,今天我们就一起体验计算器给我们带来什么感觉。 二探究体验,经历过程 1.教学例1。 师:你会用计算器吗?按照下面的步骤用计算器算一算。(课件出示:教材第26页例1图) 学生按要求操作;教师巡视了解情况,指导个别学习有困难的学生。

师:你学会计算器的使用了吗?自己尝试计算下面习题。(课件出示:教材第26页例1下面的三道计算题) 学生尝试独立计算;教师巡视了解情况。 师:说一说你是怎样用计算器进行操作计算的。 生1:首先按数字键8、2、5,输入被减数825;再按运算符号键“-”;接着按数字键1、3、8输入减数138;最后按“=”键,屏幕上显示计算结果是687。 生2:首先按数字键2、6,输入一个因数26;再按运算符号键“×”;接着按数字键3、9输入另一个因数39;最后按“=”键,屏幕上显示计算结果是1014。 生3:首先按数字键3、1、2,输入被除数312;再按运算符号键“÷”;接着按数字键8输入除数8;最后按“=”键,屏幕上显示计算结果是39。 对于操作正确、计算出准确结果的学生给予表扬鼓励。 2. 教学例2。 师:运用计算器完成计算不是为了不动脑筋,而是为了帮助我们解决面对大数据计算的麻烦事情,通过借助计算器得出的结果使我们更容易探索出计算的规律。试试看,用计算器计算左边算式,你发现了什么?可以跟小组的同学讨论交流。(课件出示:教材第26页例2) 学生进行小组活动;教师巡视了解情况。 师:如果不用计算器,你能直接写出上面算式的得数吗? 生1:不能,数据太大了,口算不出来。 生2:如果我们用计算器算出左边算式的得数,找到规律,就能直接写出右边算式的结果了。 师:你们通过用计算器计算左边的算式,发现了什么规律? 生3:当计算9999×2时,结果是在18(第二个因数与9的积)的中间插入3个9,即19998;当计算9999×3时,结果是在27(第二个因数与9的积)的中间插入3个9,即29997;当计算9999×4时,结果是在36(第二个因数与9的积)的中间插入3个9,即39996。

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

汇编语言实现简单的计算器运算

汇编语言实现简单的计算器运算 DA TAS SEGMENT x dw 0 op db 0 DIV ARRAY dw 10000,1000,100,10,1 DA TAS ENDS stack segment db 100 dup(?) stack ends CODES SEGMENT ASSUME CS:CODES,DS:DA TAS,ss:stack START: MOV AX,DATAS MOV DS,AX next: call do_cal ;输入第一个表达式如:5+3= call show ;输出表达式结果 mov dl,0dh mov ah,02h int 21h mov dl,0ah mov ah,02h int 21h ;回车换行 jmp next ;跳回输入第二个表达式 do_cal: ;输入表达式 call input ;输入数 cmp al,'e' jz exit MOV OP,AL CMP OP,'+' jnz next1 call do_add jmp next5 next1: CMP OP,'-' JNZ NEXT2 CALL DO_SUB JMP NEXT5 NEXT2: CMP OP,'*' JNZ NEXT3 CALL DO_MUL JMP NEXT5 NEXT3:

CMP OP,'/' JNZ NEXT4 CALL DO_DIV jmp next5 NEXT4: cmp op,'=' call show next5:ret ;判断运算符input: ;输入数字xor bx,bx mov cx,10 skip: MOV AH,1 INT 21H cmp al,'0' jl skip1 cmp al,'9' jg skip1 push ax mov ax,bx mul cx mov bx,ax pop ax and al,0fh xor ah,ah add bx,ax jmp skip skip1:ret do_add: ;加法 mov x,bx call input ;输入第二个数 add bx,x ret do_sub: ;减法 mov x,bx call input ;输入第二个数 sub x,bx mov bx,x ret do_mul: ;乘法 mov x,bx call input ;输入第二个数 mov ax,bx mul x mov bx,ax

单片机简易计算器设计(汇编语言)

KEYBUF EQU 40H ;键号存放单元 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV KEYBUF,#0 ;初始键号设位0,也可以为任意值 MOV R0,#30H ;显示首地址 MOV R2,#0CH ;计算数据存放单元个数 CLR A QING: MOV @R0,A;将数据存放单元清零 INC R0 DJNZ R2,QING MOV P0,#8FH ;关闭显示 MOV R1,#30H ;将显示首地址存放R1里 ;=============================================== ;五位无符号显示子程序 DIS1: MOV R0,#30H ;把显示数据第一位放在R0里 MOV R2,#04H ;把显示的位码放在R2里 MOV R3,#05H ;把显示的长度放在R3里 DIS2: MOV A,@R0 ANL A,#0FH ;屏蔽显示数据的高四位 MOV B,A MOV A,R2 ANL A,#0FH ;屏蔽位码的高四位 SW AP A ORL A,B MOV P0,A;送总显示数据到P0显示 LCALL DELY4ms ;调用延时4ms INC R0 ;取下一个显示数据 DEC R2 DJNZ R3,DIS2 ;四位显示晚后重新开始显示 ;=================================================== ;键盘扫描子程序 WAIT: MOV P1,#0FFH ;P1口送高电平 CLR P1.0 ;第一行清零 MOV A,P1 ;读P1口 ANL A,#0F0H ;低位屏蔽 XRL A,#0F0H ;判断低位是否有低电平,即判断是否有按键按下 JZ NOKEY1 ;地位有低电平继续扫描,否者跳到第而行去扫描 LCALL DELY10ms ;延时10ms去抖在进行判断是否有按键按下 MOV A,P1 ;继续读P1口 ANL A,#0F0H ;判断低位是否有低电平 CJNE A,#0E0H,NK1 ;如果扫描数据不为0E0H就转到NK1 MOV KEYBUF,#0 ;否者判断为0号键 AJMP DK ;转DK1查表程序

小学五年级数学《用计算器探索规律》优秀教案模板

小学五年级数学《用计算器探索规律》优秀教案模板通过学生借助计算器的计算,探索并掌握一个因数不变,另一个因数乘几,积也随着乘几的变化规律。能借助计算器探求数学规律,会根据发现的规律写商。下面就是我给大家带来的小学五年级数学《用计算器探索规律》优秀教案模板,希望能帮助到大家! 小学五年级数学《用计算器探索规律》优秀教案模板一 教学内容:用计算器探索规律P29 教学目标:1、能借助计算器探求简单的数学规律。 2、培养学生观察、归纳、概括、推理的数学能力。 3、让学生感受到信息化时代,计算器(或计算机)是探索数学知识的有力工具。 教学过程: 一、激发学生兴趣 1、使用计算器,小组合作 任意给出四个互不相同的数字,组成数和最小数,并用数减最小数,对所得结果的四个数字重复上述过程,你会发现什么呢? 2、小组汇报,展示过程,讨论发现。 3、采访学生,有什么感受。 师:仿佛掉进了数学黑洞,永远出不来,非常的神奇,今天,我们还将利用计算器去探索更多的有趣的神奇的数学规律,有兴趣吗?let’sgo! 二、自主探索

1、出示例10独立操作,你发现了什么规律? ①商是循环小数②下一题结果是上一题的2倍… 不计算,用发现的规律直接写出后几题的商。 2、用计算器验证。 小结:一旦发现规律,就可以运用规律解决问题。 3、独立完成“做一做”,你发现什么规律?先小组交流,再全班交流校对。 三、请学生总结,也可质疑。 教师激励:肯定学生去探索规律后的秘密的探索精神,鼓励他们继续努力;希望学生在生活中,学习研究中去发现探索更多的规律。 四、独立练习P317-9 小学五年级数学《用计算器探索规律》优秀教案模板二 教学目标: 1.使学生借助计算器的计算,探索并掌握一个因数不变,另一个因数乘几,积也随着乘几的变化规律。 2.使学生在使用计算器探索规律的过程中,经历观察、比较、猜想、验证和归纳等一系列的数学活动,体验探索和发现数学规律的基本方法,进一步获得探索数学规律的经验,发展思维能力。 3.使学生在参与数学活动的过程中,体会与他人合作交流的价值,学会与他人交流,逐步养成良好的与他人合作的习惯和意识。同时使学生体验数学活动的探索性与创造性,感受数学结论的严谨性与确定性,获得成功的乐趣,增强数学学习的信心。 教学重点:

《估算、用计算器计算及借助计算器找规律计算》教案设计

课前准备 教师准备PPT课件 学生准备计算器 教学过程 ⊙谈话导入 估算在生活中的应用非常广泛,计算器为人们解决具体计算问题、发现数学规律带来了便利。这节课我们主要来复习估算、用计算器计算及借助计算器找规律计算。(板书课题:估算、用计算器计算及借助计算器找规律计算) ⊙回顾与整理 1.估算。 (1)什么叫估算?一般怎样估一个数? ①对事物的数量或计算结果作出粗略的推断或估计叫估算。 ②估算一般用“四舍五入”法,把这个数估成整十、整百、整千……的数,使它与实际结果相差最少。 (2)举例说明:加法、减法、乘法、除法的估算各应怎样进行? ①加法估算是把加数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数求和。 例如:1586+3769≈6000 ②减法估算是把被减数和减数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数求差。 例如:5160-3178≈2000 ③乘法估算分两种情况。 a.一个因数是一位数的乘法估算,把另一个因数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用近似数和这个一位数相乘。 例如:816×3≈2400 b.一个因数是两位数的乘法估算,把两个因数最高位后面的尾数用“四舍五入”法省略,求出近似数,然后用两个近似数相乘。 例如:816×33≈24000 ④除法估算分两种情况。

a.除数是一位数的除法估算,如果被除数最高位上的数够除,就用“四舍五入”法把被除数最高位后面的尾数省略;如果被除数最高位上的数不够除,就用“四舍五入”法把被除数前两位后面的尾数省略,求出近似数,然后求商。 例如:8632÷3≈3000632÷9≈70 b.除数是两位数的除法估算,先分别求出除数和被除数的近似数,把除数十位后面的尾数“四舍五入”;如果被除数最高位上的数比除数十位上的数大,就把被除数最高位后面的尾数“四舍五入”;如果被除数最高位上的数比除数十位上的数小,就把被除数左起第二位后面的尾数“四舍五入”,再求这两个近似数的商。 例如:538÷62≈9(538≈540,62≈60) 898÷31≈30(898≈900,31≈30) (3)如何用估算解决问题? 预设 生1:应具体问题具体分析,根据要解决的具体问题选择适当的估算方法(“四舍五入”法、“进一”法和“去尾”法),使估算的结果符合实际。 生2:估算购物要带的钱、制作物品要用的原料要估大些。 生3:估算座位能坐多少人要估小些。 …… 2.复习用计算器计算和借助计算器找规律计算。 (1)回顾对计算器的认识。 (组内交流计算器各键的名称及作用) (2)教师读题,同桌合作,用计算器计算。 (学生一个按键,一个观察、指导,每完成一道题就进行交换,教师随机出题,集体订正答案) (3)借助计算器找规律。 ①如何借助计算器找规律? a.用计算器独立计算。 b.观察算式特点及计算结果找规律。 c.用计算器计算来验证规律。 ②试一试。 先用计算器计算出下面前3题的得数,找到规律,再直接写出后3题的结果。 9999×11=9999×12=

基于安卓的计算器的设计与实现

安卓应用程序设计 ——简易计算器的实现院(系)名称 专业名称 学生姓名 学生学号 课程名称 2016年6月日

1.系统需求分析 Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android 的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。计算器通过算法实行简单的数学计算从而提高了数学计算的效率,实现计算器的界面优化,使界面更加友好,操作更加方便。基于android的计算器的设计,系统具有良好的界面;必要的交互信息;简约美观的效果。使用人员能快捷简单地进行操作,即可单机按钮进行操作,即时准确地获得需要的计算的结果,充分降低了数字计算的难度和节约了时间。 2.系统概要设计 2.1计算器功能概要设计 根据需求,符合用户的实际要求,系统应实现以下功能:计算器界面友好,方便使用,,具有基本的加、减、乘、除功能,能够判断用户输入运算数是否正确,支持小数运算,具有清除功能。 图2.1系统功能图 整个程序基于Android技术开发,除总体模块外主要分为输入模块、显示模块以及计算模块这三大部分。在整个系统中总体模块控制系统的生命周期,输入模块部分负责读取用户输入的数据,显示模块部分负责显示用户之前输入的数据以及显示最终的计算结果,计算模块部分负责进行数据的运算以及一些其他的功能。具体的说,总体模块的作用主要是生成应用程序的主类,控制应用程序的生命周期。 输入模块主要描述了计算器键盘以及键盘的监听即主要负责读取用户的键盘输入以及 响应触屏的按键,需要监听手机动作以及用指针事件处理方法处理触屏的单击动作。同时提供了较为直观的键盘图形用户界面。 显示模块描述了计算器的显示区,即该区域用于显示用户输入的数据以及最终的计算结

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