C语言程序设计大作业设计说明书修改版(计算器设计)

C语言程序设计大作业设计说明书修改版(计算器设计)
C语言程序设计大作业设计说明书修改版(计算器设计)

高级语言程序设计大作业

设计说明书

简单计算器

学院电子信息工程学院

专业班级11级通信工程4班

学生姓名彭艺

学号201130095302

指导老师张伟娜

1.概述:

本程序是在C++6.0环境下开发的一款集整数与小数的四则运算和求余运算为一体的简单计算器。主要运用了赋值、计算、选择结构(switch语句实现多分支选择结构)、条件运算、循环计算、函数调用等原理。

2.程序概要设计:

前实现的功能:

程序已经可以完成整数、小数的基本加减乘除;整数基本求余运算;二进制,八进制,十进制,十六进制的相互转换,并可以对输入者的输入错误提出错误警告;程序可以循环运行,也可以自我实现退出菜单的功能(需要按2次回车)。目前发现的BUG有:

1、在整数输入数字的时候,如果输入的是小数的话会一直循环菜单,不会出现结果,也不会提示输入者输入错误,也不会有结果。

2、在整数求余功能中,如果输入的是小数或者输入不合理也会出现一直循环菜单的情况,同样不会提示输入者输入错误,也不会有结果。

目前没有实现的功能有:

1.给出一个二进制数,不可以计算它的原码、补码和反码。

2.整数,小数的基本运算和整数求余的运算出现错误无法提示,函数不是十分完整。

3.全部进制的函数输入的数字个数都是有限制(数字个数不能大于100),超范围就会输出错误结果,无法实现无限制的输入而得出正确结果。

4.每次算完第一次不能按回车,只能按其他按键,否则会退出,因为按两次回车就会退出程序。

5.每次算完,按非回车键都会出现一级菜单,有点繁琐,再次选择整数、小数、进制运算。

流程图:

3.程序详细设计:

在主函数中设置了全局变量,以实现功能选择,并用char函数实现循环输入。

运用do while语句控制结束程序,即在运算过后,如由键盘输入回车键则结束程序。

之后进入功能选择菜单,先调用写好的menu函数(回车2次可退出程序)。

输入提示及输入控制:

若输入的数字不是1-3,则提示输入错误,重新输入:

(运用选择结构进行判断)

其中,整数、小数、及进制转换计算功能分别使用了另一个switch语句嵌套,实现选择功能。

整数的加减乘除:

运用基本的加减乘除的函数完成,输入和输出的数字为整型。将输入的数字赋值到变量中,在让变量在程序进行相关的基本运算,输出结果即可。

小数的加减乘除:

运用基本的加减乘除的函数完成,输入和输出的数字都双精度浮点型。将输入的数字赋值到变量中,在让变量在程序进行相关的基本运算,输出结果即可。

整数求余运算:

运用%计算来完成,将输入的数字赋值到变量中,在让变量在程序进行%的运算。得出的值就是所求的余数,输出结果即可。

二进制转换八进制:

这个是对输入的数字进行判断,因为二进制只能输入0和1 。二进制转八进制时,利用了二进制转十进制做桥梁,最后再十进制转八进制。

二进制转换十进制

这也是对输入的数字进行判断,只能为0和1。

二进制转换十六进制

对输入的数字进行求余,因为输入的数字只能是0和1,所以最后的输入数字被10整除,结果不会大于1,也就是按照这个原理来实现输入错误进行提醒,如果结果不大于1,就会实现下面的函数。

先将二进制转换为十进制,再十进制转换为十六进制,对10,11,12,13,14,15进行switch语句的转换,分别转换为A,B,C,D,E,F;最后输出为十六进制。

八进制转换二进制

输入的数字在0到7的组合或单个数之间,再对输入的数字对10求余。再对2求余。

八进制转换十进制

输入的数字在0到7的组合或单个数之间,输入的数字对10求余,再经过一下程序得出结果。

八进制转换十六进制

输入的数字在0到7的组合或单个数之间,先由八进制转换到十进制,再由十进制转换到十六进制,对10,11,12,13,14,15进行switch语句的转换,分别转换为A,B,C,D,E,F;最后输出为十六进制。

十六进制转换为二进制

输入的数字要在0到9之间,字母要在A(a)到F(f)之间,否则会出现错误。

再利用这个程序输出数字,先由十六进制转换为十进制,十进制再转换为二进制。

十六进制转换为八进制

输入的数字要在0到9之间,字母要在A(a)到F(f)之间,否则会出现错误。

先由先由十六进制转换为十进制,十进制再转换为八进制。

十六进制转换为十进制

输入的数字要在0到9之间,字母要在A(a)到F(f)之间,否则会出现错误。

4.使用情况菜单:

1.一级菜单

正常使用:

输入错误:

2.二级菜单

输入错误:

进制运算:

整数加法:

整数减法:

整数乘法:

整数除法:

整数除法除数为0:

整数求余:

小数加法:

小数减法:

小数乘法:

小数除法:

二进制转八进制:

二进制转十进制:

二进制转十六进制:

八进制转二进制:

八进制转十进制:

八进制转十六进制:

十进制转二进制:

十进制转八进制:

十进制转十六进制:

十六进制转二进制:

十六进制转八进制:

十六进制转十进制:

5.总结

我刚开始是将整数、小数和进制分开源文件来写,到最后发现将个源文件就很容易出错,要修改好多地方,所以刚开始的时候要注意那些定义变量尽量不要用相同的字母定义。

本程序基本符合大作业的要求,但是还存在一些漏洞,有待改善,例如在整数运算时,如果输入了非整数,程序就不会提示输入错误,菜单就一直循环。

我觉得我这个程序可以运行,但是比较复杂,如果有地方出错,修改范围比较大,不容易找。有些进制运算要与同学讨论才会写。

最后,我很开心完成了这个计算器,但是不是很完美,还有很多漏洞。也会为自己感到有成功感,用自己的双手和脑袋完成一个简单计算器,若有时间还会尝试编译下其他程序,继续提高自己的能力,希望在C语言上有一定的进步。

6.参考文献

C语言设计(第四版) 谭浩强清华大学出版社2010年6月出版

西电微机原理大作业

科目:微机原理与系统设计授课老师:李明、何学辉 学院:电子工程学院 专业:电子信息工程 学生姓名: 学号:

微机原理硬件设计综合作业 基于8086最小方式系统总线完成电路设计及编程: 1、扩展16K字节的ROM存储器,起始地址为:0x10000; Intel 2764的存储容量为8KB,因此用两片Intel 2764构成连续的RAM存储区域的总容量为2 8KB=16KB=04000H,鉴于起始地址为10000H,故最高地址为 10000H+04000H-1=13FFFH 电路如图

2、扩展16K 字节的RAM 存储器,起始地址为:0xF0000; Intel 6264的存储容量为8KB ,因此用两片Intel 6264构成连续的RAM 存储区域的总容量为2 8KB=16KB=04000H ,鉴于起始地址为F0000H ,故最高地址为 F0000H+04000H-1=F3FFFH 片内地址总线有13根,接地址总线的131~A A ,0A 和BHE 用于区分奇偶片,用74LS155作译码电路,如图所示 3、设计一片8259中断控制器,端口地址分别为:0x300,0x302; 鉴于端口地址分别是300H 和302H ,可将82590A 接到80861A ,其他作译码。电路如图:

4、设计一片8253定时控制器,端口地址分别为:0x320,0x322,x324,0x326; 根据端口地址可知,825301,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

5、设计一片8255并行接口,端口地址分别为:0x221,0x223,x225,0x227; 由于端口地址为奇地址,8086数据总线应该接158~D D ,且BHE 参与译码。根据端口地址可得825501,A A 应该分别接到8086的12,A A ,其余参与译码。电路如图:

济南大学-微型计算机控制技术大作业

智能循迹小车——微型计算机控制技术考查作业 自动化与电气工程学院

随着现代化的不断发展,自动化越来越普及,对传感器的应用越来越多,要求精度越来越搞高,本设计面向机械自动化发展,采用了AT89S52单片机作为控制核心,利用红外对管传感器检测黑线达到循迹目的,以及自动停车,自动寻迹,整体系统的电路结构简单,可靠性能高。 采用技术主要有: (1)AT89S52单片机应用; (2)L298电机驱动及PWN电机调速; (3)传感器的有效应用; (4)程序算法的应用。 1、系统方案的选择 1.1 智能循迹小车的主控芯片的选择 方案一:采用Atmel公司的AT89S52单片机作为智能小车的主控芯片,AT89S52 是一种低功耗、高性能CMOS8位微控制器,工作电压为5V,32个I/O 口,具有 8K 在系统可编程Flash 存储器。该芯片价格便宜,应用广泛,操作简单,硬件与软件设计相对简单。大学生广泛用于单片机学习与创作。资源足够用于智能小车的设计。因此,本设计选择了此芯片。 方案二:采用德州仪器公司生产的F系列单片机MSP430F1611作为智能小车的主控芯片,MSP430F1611是一款超低功耗单片机,工作电压范围为1.8V-3.6V,48 位I/O 口线,16-Bit RISC架构,但相应硬件复杂,软件编写相对难度大,而且价格昂贵,用于智能小车资源过剩,造成浪费。经过讨论,我们放弃了此方案。 1.2智能循迹小车电源模块的选择 方案一:直接用直流电源供电。采用LM7812和LM7805稳压后产生12V和5V的直流电压,供给系统各个模块用。虽然直接用直流电源供电,功率大,但由于有电源供电线的限制,这样就会对小车的行动造成诸多不便,为了能使小车能够简便地行驶,只能放弃这一方案。

C语言程序设计第三版谭浩强课后习题答案完整版

1.6 编写一个程序,输入a、b、c 三个值,输出其中最大值。 课后习题答案完整版 第一章 1.5 请参照本章例题,编写一个C 程序,输出以下信息: ************************** Very Good! ************************** 解:mian() {int a,b,c,max; printf( “请输入三个数a,b,c:\n ” ); scanf( “%d,%d,%”d ,&a,&b,&c); C语言程序设计第三版谭浩强 解: mian() {printf( ”); “************************** printf( “”X “ n” ); printf( “Very Good!” \ n”); printf( “”X “ n” ); printf( “************************** ); max=a; if(max

{char #include c1='a',c2='b',c3= 'c',c4= ' \101 ',c5= ' 116'; printf( “a%cb%c n”,c1,c2,c 3); printf( “ b%c %c” ,c4,c5); } 解: aa 口bb 口口口cc 口口口口口口abc A 口N 3.7 要将"China" 译成密码,译码规律是:用原来字母后面的第 4 个字母代替原来的字母.例如,字母"A" 后面第 4 个字母是"E" . "E"代替"A"。因此,"China"应译为"Glmre" 。请编一程序,用赋初值的方法使cl 、c2、c3、c4、c5 五个变量的值分别为, ' C'、h'、i '、n'、a'经过运算,使cl、c2、c3、c4、c5分别变为'G'、' I '、' m >' r'、’ e',并输出。main() { char c1=' C' ,c2=' h' ,c3= ' i ' ,c4= ' n' ,c 5=' a' ; c1+=4; c2+=4; c3+=4; c4+=4; c5+=4; printf(" 密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5); } 运行结果: 密码是GImre 3.9 求下面算术表达式的值。 解: 1 )x+a%3*(int)(x+y)%2/4

《用计算器计算》教学设计

“ “ “ 《用计算器计算》教学设计 教学目标: 1、知识与技能 了解计算器各键的用途与用法,会用计算器进行有理数加、减、乘、除、乘方运算以及 混合运算。 2、过程与方法 通过动手操作、合作与交流,并借助计算器的说明书,自主探究计算器的使用方法,会 用计算器进行有理数加、减、乘、除、乘方运算以及混合运算。 重点、难点: 1、重点:掌握计算器常用功能的使用。 2、难点:熟练运用计算器进行有理数加、减、乘、除、乘方运算。 教学过程: 一、创设情景,导入新课 1、在当今的信息世界中,计算器已成为人们广泛使用的计算工具,它能使我们从繁杂 的运算中解放出来,有更多的时间、精力去做更有意义的活动。 2、计算器按功能可分为简单计算器、科学计算器、图形计算器等。计算器主要由键盘 和显示器组成。 3、本节课我们学习科学计算器的使用方法。 二、合作交流,解读探究 1、科学计算器的常用键盘介绍 (1)运算键:“+”、“-”、“×”、“÷”、“ x y ”分别进行加、减、乘、除、乘方运算。 (2)功能键: AC/ON ”是开启计算器键, DEL ”是清除键, =”的功能是完成运算或 执行指令,“OFF ”是关闭计算器键。 2、科学计算器的简单使用介绍 (1)乘幂运算的输入方法,如计算 28 ,按键“2” “ x y ” “8” “=”。 3 (2)分数的输入,如 3 ,按键“3” “ablc ” “3” “ablc ” “4”。 4 (3)科学计算器能够先乘方、再乘除、最后加减,所以作混合运算时,按键顺序与书 写顺序完全一样。 (4)输入错误时的改正:用左右方向键将光标移到你要改正的位置,按“DEL ”键消除 目前光标键在位置的数字,修改后,再按光标键返回原来的位置。 3、师生互动,操作实践 用计算器器计算下列各题: (1)135+88 (2)211-134 (3)26×14÷4 (4)0.375×(-18)+5 (5) 2 3 + 3 2 ×(-4) (6)23×1 3 5

微机原理大作业

微机大作业 班级: 学号: 姓名:

第一题: (上机题)编写程序实现下列5项功能,通过从键盘输入1~5进行菜单式选择:(1)按数字键“1”,完成将字符串中的小写字母变换成大写字母。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),变换后按下列格式在屏幕上显示:<原字符串>例如:abcdgyt0092 <新字符串> ABCDGYT0092 按任一键重做;按Esc键返回主菜单。 (2)按数字键“2”,完成在字符串中找最大值。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),找出最大值后按下列格式在屏幕上显示:<原字符串> The maximum is <最大值>. 按任一键重做;按Esc键返回主菜单。 (3)按数字键“3”,完成输入数据组的排序。用户输入一组十进制数值(小于255),然后变换成十六进制数,并按递增方式进行排序,按下列格式在屏幕上显示:<原数值串> <新数值串> 按任一键重做;按Esc键返回主菜单。 (4)按数字键“4”,完成时间的显示。首先提示用户对时,即改变系统的定时器HH:MM:SS(以冒号间隔,回车结束),然后在屏幕的右上角实时显示出时 间:HH:MM:SS。 按任一键重新对时;按Esc键返回主菜单。 (5)按数字键“5”,结束程序的运行,返回操作系统。 运行结果: 首先进入的首页:

输入1 输入字符串: 安任意键后: Esc 键返回菜单:

输入2: 输入字符串: 安任意键后 Ese键返回菜单

输入3 输入若干数: 按任意键: 按Esc返回主菜单

输入4 安1修改时间 输入修改时间: 按任意键重做 按Esc返回主菜单

计算机应用课后作业习题

习题一 一、选择题 1.一台典型的微机是由主机、键盘、(1)组成。微机必须配上软件才能工作。我们将 配置了软件的微机称为基本的微机系统。因此,微机系统是由(2)两大部分组成。(1)A.鼠标和显示器 B.光驱和软件 C.显示器和程序 D.鼠标和程序(2) A.主机和软件 B.硬件和软件 C.主机和程序 D.硬件和程序 2.操作系统的特征是。 ①并发性②串行性③确定性④不确定性⑤共享性⑥虚拟性⑦独占性 A.①②③⑦ B. ①②⑤⑥ C. ①③⑤⑥ D. ①④⑤⑥ 二、填空题 1.主机安装在主机箱内,主机箱分为立式和卧式两种。在主机箱内有住板(系统板)、硬盘驱动器、软盘驱动器、电源、显示适配器等。一般主板上集成了一个软盘接口、两个IDE硬盘接口、一个并行接口、两个串行接口、两个USB接口、AGP总线、ISA总线和软盘接口。 2.I/O总线是指CPU互连I/O设备,并提供外设访问系统存储器和CPU资源的通路。在I/O总线上通常传送三种信号:数据、地址和控制信号。PC机上的I/O总线有ISA、EISA、PCI。 3.MS-DOS是一个16位的单用户单任务的操作系统。MS-DOS可分为DOS BIOS、DOS核心和命令处理程序三个基本层次。 4.MS WINDOWS3.X、WINDOWS95文件系统采用FAT、VFAT16,Windows NT文件系统采用NTFS(HPFS)。 5.多媒体的关键技术是数据压缩技术、大规模集成电路(VLSI)制造技术、CD-ROM 大容量光盘存储器、显示技术以及实时多任务操作系统等。 6.计算机病毒(Computer Virus)有传染性、隐蔽性、危害性三个特征。 三、回答问题 1.试述鼠标和键盘的区别 答:键盘是输入设备,用字符键和数字键输入文本信息,构成用户命令或对系统询问的回答;输入控制信息,既通过各种控制键,实现对界面的控制功能。鼠标也是输入设备是能代替键盘更方便的移动光标的输入装置。 2.简述操作系统的作用及其分类 答:操作系统的作用主要是(1)通过资源管理,提高计算机系统的效率,(2)改善人机界面,向用户提供友好的工作环境。按照功能分类:(1)批处理操作系统,(2)分时操作系统,(3)实时操作系统。按照计算机配置分类:(1)单机配置:大型机操作系统、小型机操作系统、微型机操作系统。(2)多机配置:网络操作系统、分布式操作系统。按照用户/任务分类:单用户和多用户。 3.实时系统与分时系统的区别

C语言程序设计第三版习题库答案

C 语言程序设计(第三版)习题库 1、设圆半径r=,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 #include<> main(){ floatr,h,C1,Sa,Sb,Va,Vb; scanf(__”%f ”__,&r); scanf(”%d ”,__&h _);; C1=2**r; Sa=*r*r; Sb=4*Sa; Va=4**r*r*r/3; Vb=Sa*h; printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb ); } 2、输入一个华氏温度,要求输出摄氏温度。公式为c=5(F-32)/9 输出要求有文字说明,取位2小数。 #include<> main(){ floatF,c; scanf("%f",&F); ____c=5*(F-32)/9______; printf("c=%.2f",c); } 3、有一函数:?? ???≥-<≤-<=10113101121x x x x x x y 写一程序,输入x 值,输出y 值。 #include<> main(){ intx,y; printf("输入x :"); scanf("%d",&x); if(x<1){/*x<1*/ y=x; printf("x=%3d,y=x=%d\n",x,y);

}elseif(____x<10_______){/*1≤x-10*/ _____y=2*x-1_______; printf("x=%3d,y=2*x-1=%d\n",x,y); }else{/*x≥10*/ y=3*x-11; printf("x=%3d,y=3*x-11=%d\n",x#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d\n",y); }#include"" main() { intx,y; scanf("%d",&x); if(x<1) {y=x;} elseif(x>=1&&x<10) {y=2*x-1;} else {y=3*x-11;} printf("%d",y); }scanf("%d",&x);

四年级数学《用计算器计算 》教学设计

用计算器计算 教学内容:教科书第26页例1例2,做一做。练习四的第1、3、4、题。 教学目的: 1.使学生能够利用电子计算器进行简单的计算。 2.使学生知道用电子计算器计算顺序和笔算顺序是一样的。 3.让学生善于观察发现数学的秘密,能够对一些有规律的数进行口算。 教学重点:能够利用计算器进行简单的计算。 教学难点:懂得观察发现一些有规律的数的计算。 教学准备及设计意图: 本节课会用到ppt课件、聚光灯等教学手段,在新授环节使用拉幕功能,在巩固练习环节把ppt和白板合二为一。通过使用以上教学手段,活跃课堂气氛,提高教学效率。 教学过程: 一、利用计算器计算: (出示微视频计算器,使用聚光灯熟悉各个按键的名称和功能) 386+179= 说说你是怎样使用的。 (先按“386”,屏幕上显示386,再按“+”,屏幕显示不变,再按“179”,屏幕显示179,按“=”,显示结果565。) 试试ce键有什么功能?(清除)(出示 自己试试看: 26×39=312÷8= l.你觉得使用计算器需要注意些什么? 看清数,别摁错了;每次计算前要清0。 2.计算。 54+46= 60×2= 198÷49=50+30= 38×79=201+99= 计算后说一说你怎么算的这么快?(并不是任何时候用计算器计算都是最好的,像可以直接口算的、能简算的题目,就不需要使用计算器了。) 3.做一做练习。 让学生在小组内做一做,然后同桌做一做。 二、观察发现 1.比一比,看谁做的又对又快。(巩固练习中使用拉幕依次出示不同组的练习题,便于学生进行每组的比较和总结数的规律) (以四人小组为单位进行) 9999×1=9999×2=9999×3=9999×4= 说说你为什么做的又对又快。

计算机程序设计语言的发展历程

1.概论自从世界上第一台电子计算机ENIAC于1946年问世以来,伴随着计算机硬件的不断更新换代,计算机程序设计语吉也有了很大的发展.至今已有四代语言问世。 在过去的几十年间,大量的程序设计语言被发明、被取代、被修改或组合在一起。 尽管人们多次试图创造一种通用的程序设计语言,却没有一次尝试是成功的。 程序设计语言正在与现代科技日益飞跃,人类的智慧在日益彰显。 1.机器语言电子计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。 计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种语言,就是机器语言。 使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。 而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。 但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。 机器语言,是第一代计算机语言。 2.汇编语言为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进: 用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“ADD”代表加法,“MOV”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。

然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。 汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。 3.高级语言从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。 第一个高级程厅设计语著诞生严50年代。 当时的计算机非常昂贵,而月功量非常之少,如问有效地使用计算机足一个相当重要的问题。 另一方面,计算机的执行效率也是人们追求的r1你。 为了有效地使用汁算机.人们设计出了高级语言,用以满足用户的需求。 用商级语言编写的程序需要经过翻译,计算机才能执行。 虽然,程序翻译占去了一些计算机时间,在一定程度上影响了计算机的使用效率。 坦是实践证明。 高级语言是有效地使用汁算机与计算机执行效率之间的一个很好的折中手段。 经过努力,1954年,第一个完全脱离机器硬件的高级语言—FORTRAN问世了,40多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有FORTRAN、ALGOL、COBOL、BASI C、LISP、SNOBOL、PL/ 1、Pascal、

微机原理大作业代码

四、程序代码 STACK SEGMENT STACK DB 256 DUP(?) TOP LABEL WORD STACK ENDS DA TA SEGMENT TABLE DW G1, G2, G3, G4, G5 STRING1 DB '1. Change small letters into capital letters of string;', 0DH, 0AH, '$' STRING2 DB '2. Find the maximum of string;', 0DH, 0AH, '$' STRING3 DB '3. Sort for datas;', 0DH, 0AH, '$' STRING4 DB '4. Show Time;', 0DH, 0AH, '$' STRING5 DB '5. Exit.', 0DH, 0AH, '$' STRINGN DB 'Input the number you select (1-5) : $' IN_STR DB 'Input the string (including letters & numbers, less than 60 letters) :', 0DH, 0AH, '$' PRESTR DB 'Original string : $' NEWSTR DB 'New string : $' OUT_STR DB 'The string is $' MAXCHR DB 'The maximum is $' IN_NUM DB 'Input the numbers (0 - 255, no more than 20 numbers) : ', 0DH, 0AH, '$' OUT_NUM DB 'Sorted numbers : ', 0DH, 0AH, '$' IN_TIM DB 'Correct the time (HH:MM:SS) : $' HINTSTR DB 'Press ESC, go back to the menu; or press any key to play again!$' KEYBUF DB 61 DB ? DB 61 DUP (?) NUMBUF DB ? DB 20 DUP (?) DA TA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACK START: MOV AX, DATA MOV DS, AX MOV AX, STACK MOV SS, AX MOV SP, OFFSET TOP MAIN: CALL FAR PTR MENU ; 设置显示器 AGAIN: MOV AH, 2 MOV BH, 0 ; 页号 MOV DL, 41 ; 列号 MOV DH, 10 ; 行号 INT 10H ; 光标位置设置

微型计算机原理作业第十二章 习题与思考题

第十二章习题与思考题 典型例题解析 例12-1 总线标准与接口标准的特点 答案:总线标准与接口标准在概念上是不同的,但是,往往把一些接口标准说成是总线标准。实际上两者之间是有其区别特征的。 (1)总线标准的特点 ①公用性,同时挂接多种不同类型的功能模块; ②在机箱内以总线扩展插槽形式提供使用; ③一般为并行传输; ④定义的信号线多,且齐全,包括分离的数据、地址和控制信号线以及电源线。 (2)接口标准的特点 ①专用性,一般是一个接口只接一类或一种设备; ②一般设在机箱外,以接口插头(座)形式提供使用; ③有并行和串行两种传输; ④定义的信号线少,且不齐全,一般是控制信号线、数据信号线、地址信号线共用。 例12-2 计算机系统采用“面向总线”的形式有何优点? 答案:面向总线结构形式的优点主要有: ①简化了硬件的设计。从硬件的角度看,面向总线结构是由总线接口代替了专门的I/O 接口,由总线规范给了传输线和信号的规定,并对存储器、I/O设备和CPU如何挂在总线上都作了具体的规定。所以,面向总线的微型计算机设计只要按照这些规定制作CPU插件、存储器插件以及CPU、存储器插件以及I/O插件等,将它们连入总线即可工作,而不必考虑总线的详细操作。 ②简化了系统结构。整个系统结构清晰,连线少,底板连线可以印刷化。 ③系统扩充性好。一是规模扩充,二是功能扩充。规模扩充仅仅需要多插一些同类型的插件;功能扩充仅仅需要按总线标准设计一些新插件。插件插入机器的位置往往没有严格的限制。这就使系统扩充即简单又快速可靠,而且也便于查错。 ④系统更新性能好。因为CPU、存储器、I/O接口等都是按总线规约挂到总线上的,因 而只要总线设计恰当,可以随时随着处理器芯片以及其他有关芯片的进展设计新的插件,新的插件插到底板上对系统进行更新,而这种更新只需更新需要新的插件,其他插件和底板连线一般不需更改。

小学数学人教版四年级上册《用计算器计算》教案(2).docx

小学数学人教版四年级上册 用计算器的计算 第一课时课题:用计算器计算 教学内容:用计算器计算,课本第26、 27 页的内容。 教学目标: 1.了解算术型计算器表面各按键的功能. 2.了解算术型计算器工作的基本过程. 3.掌握算术型计算器的使用方法. 4.培养学生动手操作能力. 教学重点:了解计算器的键盘结构,掌握计算器的使用方法. 教学难点:掌握计算器的使用方法. 教学过程: 一、激发兴趣,引入新课 投影下列题目。 57+26=82-49=12×27=351÷13= 36+47=41-18=26×28=544÷16= 师:哪个同学和老师比赛?看谁做的快? 师:同学们想知道老师为什么做的又对又快吗?这节课老师就把这中间的奥妙告诉你们,相信你们知道后比老师做的还快.这节课我们一起学习电子计算器的使用. (板书课题) 二、讲授新课 (一)计算器的认识 1.师:关于计算器,同学们都知道哪些知识?(学生自由发言) 2.师:大家说的都不错,下面我们请计算器博士给大家介绍一下电子计算器方面的知识.(演示动画“电子计算器”) 3.师:听了计算器博士的介绍,我们对于电子计算器已经有了一些初步的认识,那么如何使用呢?我们继续研究.(学生拿出准备的计算器)4.出示思考题

(1)计算器包括哪些按键? (2)这些按键的功能是什么?(学生通过实验自己验证) 5.汇报结果 (1)哪些是数字键?按下数字键在哪里显示?他们什么关系? 教师任意报数,学生练习输入(教师强调输入要从高位输起) (2)要完成加减乘除运算并显示计算结果,还需要什么键?(四则运算键 和等号键)(板书) 练习 12÷4 (说出过程) (3)A .如果发现输入错误,怎么办?(清除键)(板书) 例如: 9-3, 按键,教师强调:清除键只清除错误输入的4,前边输入的数据仍然保留.B.如果一道题计算完毕,需要计算另一道题,这时应该怎么办? C.如果需要清除前边的所有数据,应该怎么办?为什么? 师:下面我们通过几道四则运算式题,检验一下大家的学习效果. (二)计算器的应用 1.出示例 1:用计算器计算 386+179825-138(板书) 学生自己试做,然后汇报过程.(教师可继续演示动画“电子计算器”,利用其中的计算器进行演示) 教师关键要强调输入数据和使用运算键的方法. 练习: 750+1473=2983-627=32×68= 1548÷43=49×39=17805-3976= 小结:加、减、乘、除的单项运算,只要选择相应的四则运算符号就可以了 2、教学例题 2 出示: 9999×1 9999×2 9999×3 9999×4 (1)独立计算,把结果写出来。

计算机程序设计语言发展史和对程序设计语言未来的看法

计算机程序设计语言发展史和对程序设计语言未来的看法信息科学与工程通信一班比拉力江·买买提20104055049 【摘要】 本文以自然辩证的观点探讨了计算机语言的发展历程,运用自然辩证法的基本理论、基本方法,系统分析了计算机语言的发展历史、现状和未来。并对其的发展趋势和未来模式做了探索性研究和预测,同时以哲学的观点阐述其发展的因果关系,揭示其事物发展的共性问题;最后文章介绍了在计算机语言发展历程中做出杰出贡献的科学家,以其在计算机事业中的突出表现来折射出人类智慧的伟大,以其不平凡的一生来激励和指导我们在计算机语言的发展中向着正确的方向前进。 【关键字】 自然辩证法计算机语言计算机技术编程语言因特网面向对象 一、引言 一九九三年美国的克林顿政府提出了“信息高速公路”计划,从而在这十多年间在全球范围内引发了一场信息风暴,信息技术几乎触及了现代生活的方方面面,毫不夸张的说没有了信息技术,现代文明的生活将无从谈起;作为信息技术中最重要的部分,计算机技术无疑是其发展的核心问题,而我们知道计算机只是一台机器,它只能按照计算机语言编好的程序执行,那么正确认识计算机语言的过去和未来,就是关系到计算机发展的重中之重;以自然辩证法的观点认识和分析计算机语言的发展历程,将有助于更加全面地推动计算机技术的发展,有助于更加准确地掌握计算机语言发展趋势。 二、科学认识大门的钥匙--当代自然辩证法 自然辩证法,是马克思主义对于自然界和科学技术发展的一般规律以及人类认识自然改造自然的一般方法的科学,是辩证唯物主义的自然观、科学技术观、科学技术方法论。它主要研究自然界发展的总规律,人与自然相互作用的规律,科学技术发展的一般规律,科学技术研究的方法。 马克思、恩格斯全面地、系统地概括了他们所处时代的科学技术成功,批判吸取了前人的合理成分,系统地论述了辩证唯物主义自然观、自然科学发展过程及其规律性,以及科学认识方法的辩证法,以恩格斯的光辉著作《自然辩证法》为标志,创立了自然辩证法继续发展的广阔道路。

微机原理交通灯系统设计大作业样本

微机原理与接口技术 大作业 交通灯控制电路设计 1.设计题目 交通灯控制电路设计 规定: 1-每个路口均有车行批示灯:红,黄,绿 2-每个路口均有人行批示灯:红,绿 3-倒计时显示:两位数码管

4-使用PC-XT总线,定期器 5-设计硬件电路,列写控制规律,软件流程。 2.设计方案 本方案通过使用PC-XT总线,定期器,20个共阴极LED灯管,2片8255芯片与74LS138译码器,加上2个与门,以及16个LED共阴极数码管实现题目给定功能。 功能概述:使东南西北四个路口车行红绿黄灯,与人行道红绿灯,实现如下功能: 1-初始状态,四个路口全为红灯; 2-东西路口车行批示灯红灯,东西路口人行批示灯绿灯,南北路口车行批示灯绿灯,南北路口人行批示灯红灯,延时 3-东西路口车行批示灯黄灯闪烁,东西路口人行批示灯红灯,南北路口车行批示灯绿灯,南北路口人行批示灯红灯,延时 4-东西路口车行批示灯绿灯,东西路口人行批示灯红灯,南北路口车行批示灯红灯,南北路口人行批示灯绿灯,延时 5-东西路口车行批示灯绿灯,东西路口人行批示灯红灯,南北路口车行批示灯黄灯闪烁,南北路口人行批示灯红灯,延时 6-在各个交通灯按照上述逻辑循环变换期间,2位LED数码管不间断计时进行倒计时,同步预备进行各个颜色交通灯转换。

3.硬件电路 如图所示

由硬件电路分析: AEN=0-非DMA操作,可以使译码器参加译码输出有效片选信号,故AEN=0,取反后为1。 由于G为高电平有效,G2A,G2B为低有效,故A9=0;A8=0,AEN=0使G2A,G2B,G有效。 由74LS138真值表可得输入 使能-G1=1;G2A=G2B=0且选取-C=B=A=1时,输出处Y0=Y1=1,取反后Y1=Y0=0,接入两个8255芯片片选信号口CS。由于CS口为低电平有效,故两片8255与CPU及PC-XT总线完毕连接 故82551-交通灯处: 控制口地址:00 1111 1111 →0x0FF C口地址:00 1111 1110 →0x0FE B口地址:00 1111 1101 →0x0FD A口地址:00 1111 1100 →0x0FC

微机原理大作业-测量电风扇转速的方案

测量电风扇转速的方案 0 引言 电风扇是每家每户都会有的一个电器,在 空调尚未普及之前,炎炎夏日人们能在风扇面 前吹着风就已经是很好的享受了。但是不知道 大家有没有想过,我们常见常用的风扇叶片的 转速究竟是多少呢。接下来我们便来探讨测量电风扇转速的一种方法。 1 可行性研究 1.1 背景 风扇转速是指风扇扇叶每分钟旋转的次数,单位是rpm。风扇转速由电机内线圈的匝数、工作电压、风扇扇叶的数量、倾角、高度、直径和轴承系统共同决定。在风扇结构固定的情况下,直流风扇(即使用直流电的风扇)的转速随工作电压的变化而同步 变化。风扇的转速可以通过内部的转速信号进行测量,也可以通过外部进行测量(外部测量是用其他仪器看风扇转的有多快,内部测量则直接可以到BIOS里看,也可以通过软件看。内部测量相对来说误差大一些)。风扇转速与散热能力并没有直接的关系,风量是决定散热能力的根本条件,更高的风扇转速会带来更高的噪声,选购散热器产品时如果风量差不多,可以选择转速低的风扇,在使用时会安静一些。

1.2 应用现状/对比案例 查阅资料可知,在其他的转速测量方法中,有一些采用了内部测量转速的方法需要采集的电子参数过多,电路逻辑分析也过于复杂(如图1、图2),故在电风扇转速的测量中,我们应尽量选用外部测量的方法,这样可以简化操作并有效减小误差。 图1其他方案转速采集电路仿真 图2其他方案控制系统示意图 1.3 效益分析 本方案中所选取的单片机、传感器均为常见且易得的器件,在花费上可以有效节省费用。 2 总体方案/初步设计

2.1 方案总述 针对在工程实践中很多场合都需要对转速这一参数进行精准测量的目的,采用以STC89C51 芯片为核心,结合转动系统、光电传感器、显示模块等构成光电传感器转速测量系统,实现对电风扇转速的测量。通过测试表明该系统具有结构简单、所耗成本低,测量精度高、稳定可靠等优点,具有广阔的应用前景。 2.2 总体方案 系统总体结构如图3所示,主要包含以单片机为核心的主控电路、以传感器为主的信息采集处理单元、转动系统、显示模块等。 图3系统总体结构 2.3 测量原理 单片机转速测量系统采用的主要原理一般情况下,大多数的单片机转速测量系统都会被视线安装在相应的设备上,同时还要通过对一些不同类型的传感器的使用来实现脉冲的产生,后才可以实行测评的方法对扇叶的转速进行有效的测量。但是对于那些临时性的转速测量系统来说,他们在进行转速测量过程中所选取的传感器主要是光电传感器,这就需要相关的技术工作人员提前在电机的转轴上安装一个能够产生脉冲的装置,从而实现对电机转速的频率测量。但是综合来看,不论是长期使用的单片机转速测量系统还是短期的测量系统,都可以通过微系统来对转轴上的转动系统 信号采集及其 处理 单片机处理电路 显示模块

C语言程序设计教程第三版(李凤霞)习题答案

教材习题答案 第一章 习题 一、单项选择题 1. C 2. B 3. B 4. C 5. D 6. A 7. C 8. A 二、填空题 1. 判断条件 2. 面向过程编程 3. 结构化 4. 程序 5. 面向对象的程序设计语言 6. 基本功能操作、控制结构 7. 有穷性 8. 直到型循环结构 9. 算法 10.可读性 11.模块化 12.对问题的分解和模块的划分

习题 一、单项选择题 1. B 2. D 3. C 4. B 5. A 6. A 7. B 8.C 二、填空题 1. 主 2. C编译系统 3. 函数、函数 4. 输入输出 5. 头 6. .OBJ 7. 库函数 8. 文本 第三章 习题 一、单项选择题 1. D 2. B 3. A

5. C 6. D 7. D 8. B 9. B 10.C 11.A 12.D 13.C 14.C 15.C 16.A 17.C 18.C 19.C 20.D 21.A 22.D 23.D 24.D,A 25.D 26.A 27.B 二、填空题 1. 补码 2. 308 10 - ±

~)308 10 ,15 —6 2. 308 10 - ± (~)308 10 ,15

6 3. 逻辑 4. 单目,自右向左 5. 函数调用 6. a 或 b ( 题目有错 , 小括号后面的 c<=98 改成( c>=97&&c<=98 )就可以得到所给的答案了) 7.

8. 65 , 89 第四章 习题 一、单项选择题 1. D 2. C 3. D 4. A 5. D 6. B 7. A 8. C 9. B 10.B 二、填空题 1. 一

“用计算器计算”教学设计

“用计算器计算”教学设计 【教学内容】:义务教育课程标准实验教科书数学四年级(上册)第100—101页 【教学目标】: 1、让学生初步认识计算器,了解计算器的基本功能,会使用计算器 进行大数目的一两步连续运算,并通过计算探索发现 一些简单数学规律。 2、让学生体验计算器计算的方便与快捷,进一步培养对数学学习的 兴趣,感受计算器在人们生活和工作中的价值。 【教学重点、难点】:通过计算发现一些简单的数学规律。 【教学准备】:课件、练习纸、计算器 【教学过程】: 1、游戏导入,激发兴趣。 谈话:同学们,你们玩过“快乐联想”的游戏吗?还想玩吗? 课件依次出示四个提示 提示一提示二提示三提示四 完美基督教医院三三两两 师:你能想到什么? 生1:我猜是十字架。 生2:我想可能是……。 出示提示四 生3:我猜是十。 答对的同学,给予肯定。 师:还想玩吗? 课件依次出示提示 提示一提示二提示三提示四 知错能改小巧学习用品计算工具 生1:我猜是橡皮 生2:我也认为是橡皮。 出示了提示四后 生3:计算器。 表扬答对的同学。 今天我们来学习用计算器计算。 课件出示课题,并板书。

2、自主探究,解决问题。 1、认识计算器。 同学们,你们在哪里见过计算器?(根据同学回答,依次出示课件中的图片) 表述:看来计算器已经深入我们生活中。 瞧,老师手中就有一个计算器,你们观察过计算器吗?看老师手中的计算器,你们看到了什么?(根据学生回答,依次板书数字键、符号键、功能键、键盘、显示器) 指出:有些功能键由于我们所学知识有限,现在还不需要用,今后我们可以再慢慢认识它们。 2、认识开机键、关机键。 用计算器前,先按什么键?(ON键,根据学生回答指出开机键) 用完后呢?(OFF键,指出关机键) 3、尝试用计算器计算。 有多少同学会用计算器?真会?那我们来“试着瞧瞧”。 (课件出示 38 + 27 = 30×18 = ) 指名说第一题计算过程。 师:你是怎么输入的? (先输入3和8,再输入加号键,输入3和7和等号键,等于65。) 追问:想知道得数,需要输入什么键?(等号键) 指出:算完后,我们可以口算或者笔算验算计算结果。 4、用计算器计算“试一试”。 看来同学们都会使用计算器计算了,让我们再显身手,拿出计算器和学习工具。把得数写在练习纸上。 (课件出示书上第101页的“试一试”) 交流得数 师:你有什么感受?(计算器计算的便捷,是我们的好帮手) 重点讲解“816× 68 ÷ 27 ”是怎样输入的? 5、“比一比”用计算器计算 (课件出示题目) 师:刚才同学们表现的都非常出色,我们来一次计算比赛如何? 问:你为什么这么快?(因为有几题可以口算的) 师:其它同学看出来了吗?是哪几题呢?(25 ×4 128 ×8 618×0×625) 小结:是啊,能口算的就不需要使用计算器了。 6、解决实际问题

计算机语言程序设计考试试题

计算机语言程序设计考试试题 1 / 5 计算机语言程序设计试题 一、填空题(每空2分,共30分) 1.结构化程序设计的三种基本结构是:【1】 、【2】 和【3】 。 2.在C 语言中(以16位PC 机为例),一个float 型数据在内存中所占的字节数为【4】 。 3.若有定义int a=2;在Turbo C 中有printf (“%d ,%d ”,a ,2&&++a );则输出为【5】 。 4.表达式x=23>16&&12+1的值为【6】 。 5.执行语句printf ("%d",strupr ("Windows ");后,输出结果为【7】 。 6.有int a=12,n=5,表达式a%=(n%=2)运算后a 的值为【8】 。 7.在C 语言中,二维数组元素在内存中的存放顺序为【9】 。 8.使用局部和全局变量时,全局变量和局部变量【10】 同名;形参和局部变量【11】 同名。 9.字符数组的输入输出有两种方法:逐个字符输入输出,用格式符【12】 ;将整个字符串 一次输入或输出,格式符【13】 。 10.语句段char s[20]=”ABCD ”,*sp=s; sp++;puts(strcat(sp+1,”MA ”));的输出结果是【14】 。 15】 值。 二、单项选择题(每小题2分,共30分) 1.C 程序的基本单位是( ) A .语句 B .字符 C .程序行 D .函数 2.TURBO C 中float 类型变量所占字节数是( ) A .8 B .4 C .2 D .2

3.以下符号中能用作用户标识符的是() A.if B.3com C._3com D.break 4.C语言中运算对象必须是整型的运算符是() A.%= B./ C.= D.* 5.执行循环语句:for(x=0,y=0;y!=200&&x<4;x++)y+=100;其循环体共执行()次。 A.2 B.3 C.4 D.5 6.与(!a==1)等价的表达式是()。 A.(a>0)B.(!a)C.(a!=0)D.(a<0) 7.如有函数int max(float x){x++;return x;},则该函数返回值的类型为()。 A.float类型B.void类型C.int类型D.无法确定 8.能正确表示代数式ln(x+y)的C语言表达式是()。 A.log10(x+y) B.lg10(x+y) C.lg(x+y) D.log(x+y) 9.执行下面的程序段后,num的值为()。 int *p,num; num=10; p=# num=*p+20; A.30 B.20 C.10 D.40 10.若有定义:int x,*pp;则正确的赋值表达式是()。 A.pp=&x B.pp=x C.*pp=&p D.*pp=*x 11.若有定义int x=1,y=1,z=1,c;执行语句c= --x&&++y&&z++;后x、y、z的值分别是()A.0、2、2 B.0、1、1 C.0、1、2 D.0、2、1 12.字符串”\abcd\13\\”的长度是()。 A.7 B.6 C.11 D.10 13.下面程序main( ){int c1=2,c2=0; while(c1) {printf(”%d%d”,c1--,c2);}}运行的结果是()。 A.输出2 0 B.无输出内容C.陷入死循环D.输出1 0 14.下面程序运行的结果是()。 #include #define HELLO ”lin” void main( ){printf(“HELLO”);printf(HELLO);} A.HELLOHELLO B.HELLO C.HELLOlin D.linHELLO 15.下面程序的输出结果是()。

相关文档
最新文档