当把算法用于人类和计算机之间传递智能时,文字形式算法的主要缺点是表示方法不规范,不同的人描述的相同的算法在用词和语句上有很大差异。又例如,计算机在执行每条语句前,需要首先“识别”出每条语句,C语言程序中每条语句结束后增加的语句结束标记符号“;”,表示当前的一条语句到此结束,这样的标识就方便了计算机对程序语句的“识别”。......
2023-11-18
程序的核心是算法。算法是描述求解问题方法的操作步骤集合。早在计算机发明以前,算法就是数学家的工具。数学家用算法来描述特定问题的解决方法。例如,数学家给出的求解两个整数的最大公约数的算法如下:
(1)令M为两个整数中的较大者,N为两个整数中的较小者;
(2)用M除以N,令R为M除以N的余数;
(3)若R不等于0,则令M等于N,N等于R,返回步骤(2)继续;若R等于0,则N中的数值就是两个整数的最大公约数。
算法给出了对求解特定问题方法的指导,有了算法,即使一个不理解求解方法原理的人,也可以按照算法描述的求解步骤一步一步得到正确的结果。例如,一个学习并理解了上述求解两个整数的最大公约数算法的人,就可以按照算法的求解步骤,求出48和32的最大公约数。求解过程如下:
(1)令M=48,N=32;
(2)48除以32的余数为16,R=16;
(3)因R≠0,所以M=32,N=16;(www.chuimin.cn)
(4)32除以16的余数为0,R=0;
(5)因R=0,所以48和32的最大公约数为N=16。
从数学家发现求解问题的算法,到学习掌握了算法的人求解具体问题的过程,都说明算法可以在人类之间传递智能。科学技术和工程技术方面新方法、新技术的发明和推广使用过程,都可以概括成利用算法的智能传播的过程。既然算法可以在人类之间传递智能,那么,如果我们把人类求解问题的方法设计成算法,然后把这样的算法传递给机器,并让机器执行这样的算法,就可以把人类的智能传递给机器。人类之间利用算法传递智能的过程,以及人和机器之间利用算法传递智能的过程示意见图1-4。
图1-4 不同主体之间的智能传递
要让人利用算法把智能传递给机器,需要做到的是:机器必须能正确地理解并正确地执行算法。冯·诺依曼体系结构的计算机就是这样的机器。在如图1-1所示的冯·诺依曼体系结构计算机中,程序是计算机能理解的求解某一特定问题的算法,人利用输入部件把程序输入到计算机,输入的程序存储到计算机的存储部件,运行程序需要的数据(例如最大公约数的程序运行时,需要输入如48和32这样的具体数据)也存储到计算机的存储部件,处理部件根据程序一步一步地执行(就像人按照算法一步一步地求解过程),程序运行的结果通过输出部件输出给人。
因此,在计算机硬件的基础上,开发程序的第一步就是开发求解特定问题的算法。
有关计算机导论的文章
当把算法用于人类和计算机之间传递智能时,文字形式算法的主要缺点是表示方法不规范,不同的人描述的相同的算法在用词和语句上有很大差异。又例如,计算机在执行每条语句前,需要首先“识别”出每条语句,C语言程序中每条语句结束后增加的语句结束标记符号“;”,表示当前的一条语句到此结束,这样的标识就方便了计算机对程序语句的“识别”。......
2023-11-18
在第1章我们简单介绍了算法的概念,并指出:软件的主体是程序,程序的核心是算法。算法既是人类之间交流智能的工具,也是人和机器之间交流智能的工具。算法的可终止性是指算法应能在有限的操作步骤后结束。我们仍以第1章给出的求解两个整数的最大公约数问题的算法为例,来讨论算法的定义问题。所以,上述方法不是一个算法。计算机求解任何问题,必须在一个有限的时间段内得到处理结果,算法的可终止性保证了这一点。......
2023-11-18
递归结构是算法中的另一种重复结构。下面仍然以查找问题和阶乘问题为例,给出递归结构算法的两个例子,然后以阶乘问题递归算法的执行过程为例,讨论递归结构算法的执行流程。的伪码形式的递归算法:PROCEDURE Factorial2{IFTHEN y=1;ELSE y=n*Factorial2(n-1);}2.递归结构算法的执行流程用例6-4算法的执行过程讨论递归结构算法的执行流程。递归算法中的递归调用过程不能无休止的进行,任何递归算法都要考虑递归调用的结束条件,这称作递归出口。......
2023-11-18
当监护人认为操作人站立位置正确,使用的安全用具合乎要求时,监护人按操作票的顺序及内容高声“唱票”,操作人应再次核对设备的名称和编号,确认无误后,复诵一遍,监护人确认无误后,发出命令“对,执行”。已执行的操作票保存3个月。发令人认可后,由操作人在操作票上盖“已执行”图章。......
2023-06-24
分析各种典型问题的算法,可以归纳整理出算法中的基本操作集合。一般来说,算法中的基本操作包含如下几种类型:数据传送:从某个内存单元中取出数值放于某个寄存器中;把某个寄存器中的数值放于某个内存单元中。例如,计算两个二进制数乘积pro=x*y问题,图3-1给出了两个二进制数相乘的方法,根据图3-1所示的方法,可以编写出用基本操作表示的处理该问题的算法。......
2023-11-18
心肺复苏心肺复苏的定义心肺复苏是为挽救猝死者生命所采取的一项急救技术。目的是使伤病者的心脏、肺脏恢复正常的功能,使生命得以维持。因此,现场心肺复苏术的程序又可具体分为八个小步骤。这样可以避免对并非意识丧失者进行复苏急救而造成不必要的损伤。心肺复苏做人工呼吸时,抢救者因过度换气,呼出的气体中,氧的含量即为18%,二氧化碳的含量则为2%。......
2024-05-01
“黑客”最初是用来称呼那些试图测试计算机程序能力极限的计算机用户。但后来当某些人尝试非法访问计算机系统时,新闻媒体就用“黑客”来称呼那些试图未经授权对计算机系统进行访问的人。“黑客”的行为是错误的,一些对计算机知识有着深入了解的人,为了展示自己的才能,实现自我价值,或被利益诱惑而成为“黑客”,并对一些政府部门或企业的内网进行攻击,这些都是违法的行为。......
2023-11-25
相关推荐