版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
编制计算机程序解决问题信息技术基础---第四章信息的加工与表达(下)案例分析:刘丽的妈妈是公司经理,需要对业务信函邮件进行加密……她的表哥建议可以从一些工具类软件中找加密软件……刘丽想自己来编写加密程序来对邮件加密,并钻研了计算机编程……编程序:就是我们针对具体问题,运用程序设计语言编制一个专门的计算机程序来解决问题。下面我们先认识一下计算机程序的基本知识。一、认识计算机与程序1、计算机运行的基本流程:接通电源---计算机执行ROM中的指令进行自检---运行操作系统windows。
操作系统装载完毕,用户可以从“开始”菜单中的“所有程序”(或点击桌面上相应的程序图标)选择程序运行。2、计算机的硬件组成计算机的硬件组成:输入设备、输出设备、中央处理器、存储器计算机的各部件由中央处理器根据程序指令控制着相互配合工作。中央处理器:控制器和运算器组成存储器分为内存和外存内存:分为ROM、RAM外存:硬盘、光盘、U盘等。3、计算机工作的基本流程:A、计算机工作时,中央处理器根据输入指令,从输入设备或外存中输入程序或数据,并保存到计算机内存中。B、执行程序时从内存中读取指令和数据,按顺序执行指令,处理结果放回内存。C、中央处理器执行输出或保存指令时,会把内存中的处理结果输出到输出设备或保存到外存中去。逐条顺序执行预先存放在存贮器中指令冯诺伊曼:存储程序控制原理输入设备输出设备预先将程序输入存储器运算器控制器中央处理器内存储器RAM外存储器传输程序或数据控制执行指令4、计算机程序基本知识事例赏析:下图是一个电子设备---数字显示电路,如果分别用二进制的“0”和“1”表示灯泡的“灭”与“亮”两种状态,试分析“6”这个数字用二进制代码如何表示。1101111
计算机是一种数字化的电子设备,采用了大量的集成电路,尽管其中的电路设计非常复杂,但工作时每段电路只有两种状态,可形象地称为开和关。所以计算机的电路可以采用二进制数字编码来表示和控制。
当把控制计算机操作的指令与存储数据的电路状态用二进制数字1和0对应表示时,人们就可以事先把需要执行的指令和处理的数据用1、0组成的代码编写好程序,输入计算机时把1、0代码直接转换为相应的开关电路,就可以让计算机工作了。这些1、0代码就好像是计算机能听得懂的语言而被称为机器语言。早期的计算机程序就是用机器语言编制的。计算机程序设计语言的发展历程:
随着科学家的努力,计算机程序设计语言的使用越来先进和方便了。机器语言:由1、0代码组成。难记难学,不方便用户使用。汇编语言:把1、0代码转换为有意义的字符代码。
以上两种计算机语言,要求用户对计算机的结构组成非常熟悉才能使用,属于低级语言。高级程序语言:贴近人们阅读理解习惯,操作界面越来越人性化,使得更多人能够更方便使用计算机。0100010001011010101011000010001000101101010111100101000100110110101010101101010111Movax,8Movbx,10Addax,bxY=8X=Y+10指令序列的集合
程序高级语言汇编语言机器语言计算机高级语言程序常见的如:BASIC、PASCAL、C++、VISUALBASIC等。
使用高级语言编写的程序都需要经过一系列的翻译过程转换为机器语言,才能让计算机执行。计算机机器语言程序计算机高级语言程序翻译程序用户计算机编写计算机语言系统执行
在计算机中的所有信息,包括字符、图像、动画、声音、视频等都是以二进制数字(1、0)编码来表示的。二、体验程序的作用及其编制环境计算机程序的运行,用户大多数时候是看不见其中运行过程的,见到的基本上是程序的操作界面及运行结果。
下面我们以VISUALBASIC(简称为VB)程序设计语言为例,体验一下如何运用计算机程序来解决问题。VB程序是一个可视化程序设计语言,是一个面向对象的集成开发系统。
(一)、任务:要求:利用VB程序设计语言编写一个加密、解密的程序,对一个文本文件中的字符进行转换:
加密:使原来可以阅读的字符---明文,变成其它读不明白的字符---密文。
解密:则把密文恢复为明文。加密前的文件(明文)加密后的文件(密文)加密程序解密程序方法如下:1、准备一份文本格式的待加密文件。2、新建程序文件。启动VB程序VB的窗口组成:窗体设计器工具箱窗体在屏幕的布局当前控件的属性窗体文件菜单栏标题栏具箱工程管理器工具栏窗体代码设计窗3、输入程序----加密源程序的代码:---PrivateSubForm_Load()FileName1$=InputBox("请输入需要加密的文件名及路径:")OpenFileName1$ForInputAs#1LineInput#1,a$MsgBoxa$,,"加密前的文本内容"Close#1mm$=""n=Len(a$)Fori=1Tonb$=Mid$(a$,i,1)c$=Chr(Asc(b$)-10)mm$=mm$&c$NextMsgBoxmm$,,"加密后的文本内容"FileName2$=InputBox("请输入加密后的文件名及路径:")OpenFileName2$ForOutputAs#2Print#2,mm$Close#2EndEndSub4、运行程序运行VB编写的加密程序,比较一下范文加密前后的情况。范文:测试文本5、保存程序把程序保存为“加密01.frm”6、修改程序把加密改为解密程序,以“解密01.frm”文件名来保存程序解密程序的源代码:PrivateSubForm_Load()FileName1$=InputBox("请输入需要解密的文件名及路径:")OpenFileName1$ForInputAs#1LineInput#1,a$MsgBoxa$,,"解密前的文本内容"Close#1mm$=""n=Len(a$)Fori=1Tonb$=Mid$(a$,i,1)c$=Chr(Asc(b$)+10)mm$=mm$&c$NextMsgBoxmm$,,"解密后的文本内容"FileName2$=InputBox("请输入解密后的文件名及路径:")OpenFileName2$ForOutputAs#2Print#2,mm$Close#2EndEndSub7、运行解密程序体验一下解密的效果!8、生成可直接执行的exe文件。命令:菜单---“文件”---“生成工程.exe”EXE格式的文件可在计算机中直接运行。(二)、探讨交流VB程序与之前学过的应用程序(如Word、PowerPoint、Excel等)相比有何不同之处?
VB程序作为一个可视化的程序设计语言,那首先设计一个窗口,再在窗口中设置相应控件(或者说相应按钮等),然后根据程序的需要,对相应的控件进行代码编写。
VB的功能强大,一经编写完毕,可无限处使用,速度快、可靠性高,精确度高。三、认识程序中的基本元素程序代码是用计算机语言编写的,计算机语言也有它的基本组成元素和书写规定。要读懂和编写计算机程序就首先要懂得计算机语言中的这些元素和规则。任务:计算机程序中通常会出现常量、变量、函数、运算符、表达式、语句等,这些都是计算机语言的基本元素。在VB中输入下列程序并运行,试找出其中哪些基本,领会它们的作用。
例子:PrivateSubForm_Click()
Print"刘"Print"丽"Print"机内代码"PrintAsc("刘")PrintAsc("丽")EndSubPrivateSubForm_Click()xm1$="刘"xm2$="丽"dm1=Asc(xm1$)dm2=Asc(xm2$)Print("字符")Print"机内代码是:"Printxm1$Printdm1Printxm2$Printdm2EndSubLx2.frmLx1.frm例子:PrivateSubForm_Click()xm1$="刘"xm2$="丽"Print"原字符"Printxm1$;Printxm2$dm1=Asc(xm1$)dm2=Asc(xm2$)Print"机内代码是:"Printdm1Printdm2jm1$=Chr(dm1-10)jm2$=Chr(dm2-10)Print"加密后的密文字符是:"Printjm1$;Printjm2$zxm1$=Chr(Asc(jm1$)+10)zxm2$=Chr(Asc(jm2$)+10)Print"解密的字符是:"Printzxm1$;Printzxm2$;EndSubPrivateSubForm_Click()xm1$="刘"xm2$="丽"dm1=Asc(xm1$)dm2=Asc(xm2$)zxm1$=Chr(dm1)zxm2$=Chr(dm2)Print"字符:";Printxm1$;Printxm2$;Print("的机内代码是:")Printdm1Printdm2Print("代码还原的字符是:")Printzxm1$;Printzxm2$;EndSubLx3.frmLx4.frm探讨交流:运行了这几个程序之后,你有何发现?VB的基本知识:
1、常量、变量与数据类型。
VB的标准数据类型:
字节型(byte)、逻辑型(boolean)、整型(integer)、长整型(long)、单精度型(single)、双精度型(double)、货币型(currency)、日期型(date)、字符型(string)、对象型(object)、变体型(variant)。计算机的内存储器存放着大量的信息,这些信息都是为了解决某个问题而设置的。在高级语言中,需要将存放数据的内存单元命名,通过内存单元名访问其中的数据。命名的内存单元就是常量或变量。常量:
在程序运行过程中,其值始终保持不变的量称为常量。常量可分为:1、普通常量:可以分为数值常量如12、18、&H14字符串常量如“abcd”“12345”逻辑常量如true(逻辑真)false(逻辑假)日期常量如#2014-3-18#等2、符号常量:一些数据在程序中反复使用,可用一个符号来代替这个数据。变量:
所谓变量,是指在程序运行期间其值可以变化的量。在VisualBasic中执行应用程序期间,用变量来临时存储数据。每个不同的变量都用变量的标识符来区分,而变量的标识符就称为变量名。变量的类型:%:表示整型&:表示长整型!:表示单精度型#:表示双精度型@:表示货币型$:表示字符型例:abc$表示该变量为字符型变量abc!表示该变量为单精度型变量abc@表示该变量为货币型变量2、运算符、函数与表达式
在计算机程序设计高级语言中,通过运算符和操作数能够组成各种类型的表达式,从而实现程序编制中所需要的大量操作。
它们可分为:
算术运算符与算术表达式如:y=x+15关系运算符与关系表达式如:x>y逻辑运算符与逻辑表达式如:x=0andx>0字符串运算符与字符串表达式如:”abc”+“def”或“abc”&”def”
函数:VisualBasic语言提供了大量的内部函数,用户可以直接调用它们。
内部函数又叫标准函数,包括数学函数、字符串函数、转换函数、日期函数和格式输出函数等。如:sin(x)求正弦值date()求当前系统的日期asc(x)求x指定字符的机内码chr(x)求x指定机内码的对应字符3、语句程序由一行行的语句组成,语句是指挥计算机工作的指令,每个语句都有其格式规定,包括关键词、搭配的参数、符号等。
如:print#1mm$是把mm$的值输出到内存中的1号文件区中去。y=x+1是指把x+1的值赋于给y一个应用程序可能由若干段程序组成,每段程序前面和后面都有起始定义语句和结束语句。
Privatesub是定义子程序的语句Endsub是结束子程序的语句
上面两个语句是成对出现的。
Form窗体是子程序的应用对象Click表示单击鼠标时开始执行该子程序Load表示程序装载后开始执行
PrivateSubForm_Load()EndSubPrivateSubForm_Click()EndSub实践:把上述任务程序中的“刘丽”修改为你的名字并执行程序,查看结果。探究活动:试找出加密程序中有哪些变量、运算符、函数和语句,尝试了解它们的作用。四、剖析编制计算机程序解决问题的过程当我们遇到的问题需要通过编制计算机程序来解决的时候,该如何做呢?一般来说,需要经历以下过程:分析问题设计算法编写程序调试运行检测结果修改1、分析问题对于任何一个实际问题,首先要分析该问题的需求情况及已知条件,判断解决问题的可能性和目标要求,然后对需要解决的问题给出一个精确的描述或者建立一个描述问题的模型。
探讨交流:你对本节开头的刘丽妈妈提出的邮件安全问题如何分析?2、设计算法问题分析清楚后。接下来是要给出解决这个问题的详细方法和步骤,这一过程称为设计算法。
算法是程序编写的基础。描述算法的方法:自然语言描述、流程图的形式描述等。根据要求的不同:可以粗略描述、也可以详细描述。算法描述越详细,编写程序就越方便。探讨交流:
1、观摩课本图4-9加密算法描述。2、想一想,能不能找到其它的加密算法?3、编写程序有了清晰可操作的算法描述,就可以选择一种计算机语言工具(如:VB程序设计语言),来实现算法。一般来说,只要算法确定,设计语言的选择没有什么特别的限定,通常根据问题的特性和编程人员对语言的熟悉程序来选定。详尽的算法描述是更有利于转换为计算机语言的代码。探讨交流:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023房子装修双方协议书七篇
- 2024秋新沪科版物理8年级上册教学课件 第6章 熟悉而陌生的力 第3节 来自地球的力
- 2023年药品包装机械项目融资计划书
- 2023年聚氨酯涂料项目融资计划书
- 烹饪原料知识习题+参考答案
- 黑龙江省佳木斯市富锦市2024届九年级上学期期末考试数学试卷(含答案)
- 养老院老人生活照顾制度
- 养老院老人健康饮食服务质量管理制度
- 2024年版智能机器人研发与销售合同
- 招聘店员劳务合同范本(2篇)
- 31智能养老创业计划书互联网+大学生创新创业大赛
- 中医医疗技术手册
- 血透室对深静脉导管感染率高要因分析品管圈鱼骨图对策拟定
- PHP编程基础与实例教程第3版PPT完整全套教学课件
- 国开日常学习行为表现范文(精选5篇)
- 教师跟岗培训个人总结汇报
- 计量器具的检定及校验分析获奖科研报告
- 建筑工程材料取样送检一览表
- 多媒体课件制作的意义及多媒体课件制作课程教案
- 经颅磁刺激技术(TMS)理论知识考核试题及答案
- 家庭教育名师工作室建设方案
评论
0/150
提交评论