您好,欢迎访问三七文档
第5课计算机语言的发展!app=2&via=QZ.HashRefresh&pos=13663849581主要内容5.1形式语言5.2计算机语言的发展25.1形式语言•计算机语言是一种形式化语言•为什么要用形式化语言?–形式语言是以数学和数理逻辑为基础的科学语言,其语言符号具有单一性、无歧义性和明确性特点–自然语言具有歧义性,其语法结构不够严格、不够统一•自然语言是某一社会发展中形成的一种民族语言•要用计算机对语言进行处理,则必须解决语言的歧义性问题3自然语言的歧义性实例•例:他的发理得好。•这个例子至少有两种不同的解释:–他的理发水平高。–理发师理他的发理得好。4形式语言的基本特点•有一组初始的、专门的符号。•有一组精确定义的符号串转换规则(即形式语言语法)。–形式语言语法中不包含语义。•在一个给定的形式语言中,可以根据需要,通过赋值或模型对其进行严格的语义解释,从而构成形式语言的语义–在形式语言中,不允许出现根据形成规则无法确定的符号串5形式语言实例•例:语言W定义为:–初始符号集:{a,b,c,d,e}。–形成规则:上述符号组成的有限符号串中,能组成一英语单词的为一公式;否则不是。•问:W是否为一形式语言?•答:不是,因为根据形成规则,无法精确地定义转换规则。原因:形成规则(语法)中包含了语义。6形式语言实例•例:语言W定义为:–初始符号集:{a,b,c,d,e,(,),+,−,×,÷}。–形成规则:上述符号组成的有限符号串中,能组成表达式的为一公式;否则不是。•问:W是否为一形式语言?•答:不是,因为根据形成规则,无法精确地定义转换规则。原因:形成规则(语法)中包含了语义7形式语言实例•例:语言W定义为:–初始符号集:{a,b,c,d,e,(,),+,−,×,÷}。–形成规则:上述符号组成的有限符号串中,凡以符号“(”开头且以“)”结尾的符号串为一公式。•问:W是否为一形式语言?•答:不是,因为根据形成规则,无法对不是以符号“(”开头且以“)”结尾的符号串进行判定。例如,(a+b)×c。8形式语言实例•例:语言W定义为:–初始符号集:{a,b,c,d,e,(,),+,−,×,÷}。–形成规则:上述符号组成的有限符号串中,凡以符号“(”开头且以“)”结尾的符号串为一公式;否则不是。•问:W是否为一形式语言?•答:是。95.2计算机语言的发展•计算机语言经历了从机器语言、汇编语言、高级语言、应用语言到自然语言的发展阶段。10算法的机器语言描述•例如:用机器指令对“2+6”进行计算的算法描述1011000000000110//将“6”送到寄存器AL中,数字“6”放在指令后八位0000010000000010//将数“2”与寄存器AL中的内容相加,结果仍存在AL中101000100101000000000000//把AL中的内容送到地址为5的单元中11算法的汇编语言描述•例如:用汇编语言对“2+6”进行计算的算法描述MOVAL,6ADDAL,2MOVVC,AL•汇编语言语句与特定的机器指令有一一对应的关系,经汇编程序(汇编语言用户的虚拟机)翻译为机器指令后才能运行12算法的高级语言描述•例如:用高级语言对“2+6”进行计算的算法描述2+6•高级语言的语句与特定机器的指令无关–高级语言程序经编译程序(高级语言用户的虚拟机)翻译成汇编语言,然后经汇编程序(汇编语言用户的虚拟机)翻译为机器指令后才能运行13算法的应用语言描述•用应用语言编程,用户只需告知系统“做什么”,而无需说明“怎么做”–如:SQL–这类语言提供了功能强大的非过程化问题定义手段•用应用语言编写的程序一般经应用程序包(应用语言用户的虚拟机)翻译成高级语言程序后,再逐级向下实现14基于虚拟机的计算机层次结构15基于虚拟机的计算机层次结构16自然语言的计算机处理•自然语言的计算机处理可以分为以下四个层次:–第一层次是文字和语音,即基本语言信息的构成;–第二层次是语法,即语言的形态结构;–第三层次是语义,即语言与它所指的对象之间的关系;–第四层次是语用,即语言与它的使用者之间的关系。•目前,自然语言的输入问题已基本解决。要使计算机对自然语言进行处理,关键是要解决自然语言语法和语义的形式化问题。17自然语言的形式化问题•自然语言能否形式化?–人具有创造和理解正确句子的能力。这种语言“创造性”过程,其实就是由有限数量的词,根据一定的规则产生正确句子的过程。进一步而言,其实质也就是一个字符串到另一个字符串的变换过程。显然,语言“创造性”过程的本质与计算过程的本质是一致的。–因此,可以将自然语言也看作是一种计算,从而自然语言能否实现形式化的争论也就不存在了。18自然语言的形式化方法•自然语言的形式语法可表示为:G0=Vn,Vt,P0,S,其中,–Vn为非终结符号的有限集合;–Vt为终结符号的有限集合;–P0为生成式(或称产生式)的有限集合,即形式规则;–S为开始符号19自然语言的形式化实例•设自然语言的形式语法中,–Vn={S,NP,VP,N,V},–Vt={我,他,学,教,英语,汉语,希望},–P0={S→NPVP,NP→N,VP→VNP,VP→VS,N→我,N→他,V→学,V→教,V→希望,N→英语,N→汉语},–其中,•S表示句子;•NP表示名词短语•VP表示动词短语•N表示名词•V表示动词•S→NPVP表示句子由名词短语和动词短语组成•NP→N表示名词短语由名词构成20句子的派生过程举例21相关图灵奖获得者•约翰•巴克斯–1977年图灵奖获得者,FORTRAN和BNF的发明者•肯尼思•艾弗森–1979年图灵奖获得者,大器晚成的科学家,APL的发明人•查尔斯•霍尔–1980年图灵奖获得者,从QUICKSORT、CASE到程序设计语言的公理化22相关图灵奖获得者•罗宾•米尔纳–1991年图灵奖狄得者,标准元语言ML的开发者•彼得•诺尔–2005年图灵奖获得者,从天文学家到计算机科学家,BNF改良家•弗朗西丝•爱伦–2006年图灵奖获得者,编译器优化理论与实践的先驱23罗宾•米尔纳(1934-?)24彼得•诺尔(1928-?)25弗朗西丝•爱伦(1932-?)26讨论•计算机发展趋势是什么?(巨型化、微型化、网络化、多媒体化、智能化)27思考题•什么是形式语言?试举例说明。•什么是机器语言?什么是汇编语言?•如何用虚拟机的观点来划分计算机的层次结构?•自然语言的计算机处理分为哪4个层次?•为什么说自然语言的“创造性”过程的本质与计算过程的本质是一致的?28
本文标题:计算机语言的发展
链接地址:https://www.777doc.com/doc-547990 .html