A. 什么叫中介语
中介语,Interlanguage,也有人译为"过渡语"或"语际语",是指在第二语言习得过程中,学习者通过一定的学习策略,在目的语输入的基础上所形成的一种既不同于其第一语言也不同于目的语,随着学习的进展向目的语逐渐过渡的动态的语言系统。
Selinker中介语理论
美国语言学家Selinker于1969年提出中介语假说(interlanguage)的概念。1972年在其著名论文《中介语》中提出的中介语假说,是试图探索第二语言习得者在档陪习得过程中的语言系统和习得规律的假说,在第二语言习得的研究史上有重大意义。
中介语理论(Interlanguage Theory)是由Selinker等人行哪蠢最先提出来的。所谓中介语是指第二语言学习者建构起来的介于母语和目的语之间的过渡性语言,它处于不断的发展变化过程中,并逐渐向目的缓神语靠近。
B. 从教育心理学到英语教学
意识决定认知,认知决定观念,观念决定行为,行为决定成果。教师的眼界决定着课程的边界。
在英语教学中教师会运用非常多的教学方法,有些教学法,如“自然法”(Natural Approach)就是建立在某一改尘学习理论(克拉申的监察模式)的基础上的。有些教学法是以某一学习理论和某一语言理论作依据而创立起来的(如听说法)。因此,我们的英语的教研中对二外学习的理论学习非常的必要,对语言学习理论的掌握,能帮助我们了解已创立起来的教学方法,也能促使我们以这些学习理论为依据去进行英语教学法的研究。学习理论是人类学习本质以及形成机制的心理学理论,主要有行为主义学习理论,认知学习理论、建构主义学习理论,人本主义学习理论,以及一些二外教学理论,如克拉申的第二语言习得理论、温斯纳的语言输出假设、第二语言的错误分析、第二语言的阅读过程模式、第二语言的聆听模式等。
一、行为主义的学习理论
行为主义产生于20世纪20年代,华生(J.B.Watson)是它早期的代表人物。华生研究动物和人的心理。华生认为人和动物的行为有一个共同的因素,即刺激和反应。心理学只关心外部刺激怎样决定某种反应。在华生看来,动物和人的一切复杂行为都是在环境的影响下由学习而获得的。他提出了行为主义心理学的公式:刺激——反应(S-R,Stimulus-Response)。
结构主义大师布洛姆菲尔德(L.Bloomfield)以行为主义的“刺激——反应”模式作为其理论依据。Jack让Jill摘苹果说明S-R语言行为模式:
Jill’s hunger (S)
“I’m hungry”(r)
Jack’s hearing (s)
Jack’s action (R)
布洛姆菲尔德重视作为声音r….s言语行为的研究, 他认为r…s是物理的声波, 从而得出语言教学过程的理论,即在语言教学中教师对学生进行声音刺激,学生对声音刺激进行反应 。
斯金纳(B.F.Skinner)继承和发展了华生的行为主义。斯金纳认为人们的言语、言语的每一部分都是由于某种刺激的存在而产生的。这里讲的“某种刺激”可能是言语的刺激,也可能是外部的刺激或是内部的刺激。一个人在口渴时会讲出“I would like a glass of water.”。
斯金纳认为,人的言语行为通过各种强化手段而获得。在某一语言环境中,别人的声音、手势、表情和动作等都可以成为强化的手段。由于言语行为不断得到强化,孩子们就能逐渐地养成语言习惯,学会使用与其语言社区相适应的语言形式。如果没有强化,语言习惯就不能形成,语言是不能学习到的。
行为主义习惯形成的学习模式:(Stimulus)→ (Organism) →(Response Behavior),在英语教学法中常见的PPP教学法背后的理论基础也是行为主义理论的产物。
行为主义的学习理论有其明显的局限性。行为主义把研究动物所获得的结论,无保留地运用到复杂的人类行为的研究,作出粗略和肤浅的见解,它强调环境因素和外部因素是决定有机体行为的最重要因素,必然要忽视人在言语行为中的主动作弊含用和独立作用。它不能解释为什么一个四五岁的孩子就能掌握某一种结构复杂的语言。
二、认知主义的习得理论
乔姆斯基(Norm Chomsky)是认知主义习得理论的代表人物之一。乔氏认为任何发育正常的儿童能在短短几年内获得母语使用能力,这个事实行为主义学习理论解释不了。儿童是不可能根据他们听到的数量有限的句子,通过归纳、推理和抽象概括而习得母语语法和学会母语使用的。乔氏认为,人类有一个与生俱来植于大脑里的所谓语言习得机制(Language Acquisition Device,简称LAD)或普遍语法(Universal Grammar,简称UG)。按乔氏理论,外部环境和语言输入只有“激活”语言习得机制的作用。
母语心得过程:语言输入→普遍语法→特定语言的语法
认知主义习得理论强调的是人脑中的内在因素,而不是习得的外部环境和语言输入。对于普遍语法是否在第二语言习得过程中起作用的问题,学者们有不同的观点。
(皮亚杰的认知发展阶段论,小学生处于具体运算阶段,思维守恒、可逆)
三租歼笑、建构主义学习理论
代表人物:皮亚杰和维果斯基
强调学习主动建构性、社会互动性和情境性。建构主义学生观强调在教学中充分考虑学生已有的知识体系,尊重其个体差异,找到每个学生的最近发展区,更加有的放矢地进行精准教学。因为在教学实践中,我们发现围绕知识的教学不仅让教师失去了耐心和信心,更是抹杀了儿童的天性。而当我们有了心理学和教育学上的建构主义理论,那我们的教学就会变得更加人性化,更加有创造性。
要想当一名优秀的教师,首先要成为一个真正懂孩子内心的教师。教师所掌握的教育学与心理学的内化与融合程度,决定了他在教育教学实践中应对问题的态度和方法。
独立思考、积极参与、乐于分享、善于反思,包括犯错是每个孩子应该享有的权利,请给每个孩子创造学习的平台和机会。而不要过早过多的给每个孩子贴上标签。
建构主义理论的教学启示
1.探究学习 通过有意义的问题情境,让学生不断的发现问题解决问题,来学习与探究和问题有关的知识,形成解决问题的技能和自主学习的能力。
2.支架教学
3.情境教学 建立在有感染力的真实事件和真实问题的基础上的教学,知识、学习是与情景化的活动联系在一起的。
4.合作学习
四、人本主义学习理论
代表人物:罗杰斯和马斯洛
从学习结果来看,人本主义认为学习的结果是让学生成为一个完整的人,学生的整体人格得到发展。教育的目的是以学习者为中心,以使学生个性得到发展、潜能得到发展,从而使得他们能够更加越快的创造性的学习和工作为目的的。
五、克拉申第二语言习得理论
克拉申博士(D.Krashen)的理论常称为监察模式(Monitor Model)。
1、监察模式由五个假设组成,即习得和学得假设、自然顺序假设、监察假设、输入假设和情感过滤假设。
(1)习得——学得差异假设(The Acquisition-Learning Hypothesis)
成人是通过两条截然不同的途径逐步掌握第二语言能力的。第一条途径是“语言悉得”,这一过程类似于儿童母语能力发展的过程,是一种无意识地、自然而然地学习第二语言的过程。第二条途径是“语言学习”,即通过听教师讲解语言现象和语法规则,并辅之以有意识的练习、记忆等活动,达到对所学语言的了解和对其语法概念的“掌握”。悉得的结果是潜意识的语言能力;而学得的结果是对语言结构有意识的掌握。
该假设认为,成年人并未失去儿童学语言的能力。克拉申甚至认为,如果给予非常理想的条件,成人掌握语言的能力还要比儿童强些。他同时还认为,别人在旁帮你纠正错误,对你的语言掌握是没有什么帮助的。这一点中国同学值得注意。
(2)自然顺序假设(The Natural Order Hypothesis)
这一假设认为,无论儿童或成人,语法结构的悉得实际上是按可以预测的一定顺序进行的。也就是说,有些语法结构先悉得,另一些语法结构后悉得。克拉申指出,自然顺序假设并不要求人们按这种顺序来制定教学大纲。实际上,如果我们的目的是要悉得某种语言能力的话,那么就有理由不按任何语法顺序来教学。
初学时的语法错误是很难避免的,也是没必要太介意的。
(3)监检假设(The Monitor Hypothesis)
一般说来,下意识的语言悉得是使我们说话流利的原因 ;而理性的语言学习只起监检或“编辑”的作用。换句话说,当我们开口说话时,话语由“习得”系统产生,经“学得”系统监检后成为“真言”而吐露出口。语言学习的这种监检功能可能在我们说话或写作之前,也可能在其后。
在口头交谈中,人们往往没有时间去考虑斟酌语法。语法规则如果不是悉得而是背出来的,也用不上。但在事先准备的正式发言和写作中,语法的使用能提高语言的准确性,为演讲或文章增添色彩。这一条可以说是克拉申对语法知识的用处做出的最大让步。
(4)输入假设(The Input Hypothesis)
输入假设也是克拉申第二语言悉得理论的核心部分。只有当悉得者接触到“可理解的语言输入”(comprehensible input),即略高于他现有语言技能水平的第二语言输入,而他又能把注意力集中于对意义的理解而不是对形式的理解时,才能产生悉得。如果你的现有水平为“i”,那么就要给你提供“i+1”水平的输入。这种“i+1”的输入并不需要人们故意地去提供,只要悉得者能有足够的理解输入时,就自动地提供了。克拉申认为,理解输入语言的编码信息是语言悉得的必要条件,不可理解的(incomprehensible)输入只是一种噪音。按照输入假设,说话的流利程度是自然达到的,是不能直接教会的。
对输入假设的理解关键点就是comprehensible input “i+1”。+ 1 就是在自己现有水平上加了“一点点”难度。换句话说,我们正是因为有了这一点点难度才提高的。其实大家寻找的答案,最主要的出处就在这一条上。我们之前对一系列误区的分析,很多都能从这一假设中找到依据。我们今后掌握的最重要的技术就是不断自己创造这一条件。稍后我们详细说明。
另外有一个非常重要的“沉默期”(Silent period)的概念,是在这假设里引入的。 克拉申认为,无论成人或儿童,在掌握说话能力前,都会有一个相当长的沉默期,直到听懂的量达到一定程度而有足够的自信时,才可能说话。这一沉默期是正常的同时也是必要的。所以大家不要急着上来就想说,说的能力要来得慢,同时它是自然到来的。
(5)情感过滤假设(The Affective Filter Hypothesis)
克拉申提出情感过滤假设来说明心理或情感因素对外语学习的影响。情感过滤假设认为,有了大量的适合的输入的环境并不等于学生就可以学好目的语了,情感因素起着促进或阻碍的作用,心理上的因素影响着他悉得语言的速度和质量。这些因素是:1)动机(Motivation)学生的学习目的是否明确,直接影响他们的学习效果。2)信心(Self-confidence)比较自信,性格外向,乐于把自己置于不熟悉的学习环境,自我感觉良好的学生在学习中进步较快。3)忧虑程度(Anxiety)在第二语言或外语的学习中,焦虑较少的人容易得到更多的语言输入。同样,心情放松和感觉舒适的学生在较短的时间内显然学得更好。
这一假设有点偏语言教学经验谈,它的重要性也常被忽视。 (后来人们通过实验发现,人在试图说外语而又说不出来时因焦虑而在脑部产生的电流,可以电死一只老鼠,可见学外语时的焦虑程度之高。)
情感因素的作用:语言输入→Filter→语言习得机制→习得到的能力
2、监察模式与外语教学
按照克拉申的外语教学理论,外语教学应尽量提供可理解的语言输入,为学生习得语言创造一个有利的环境。
六、斯温纳(M. Swain)的语言“输出假设”(Output Hypothesis)
1、斯温纳的输出假设的内容克拉申认为可理解的输入在第二语言习得中起着中心作用(Central Role),而斯温纳则认为输出在第二语言习得中有着显著的作用(A More Prominent Role)。 斯温纳假设的依据是“浸泡式”(Immersion)教学实验。
浸泡实验表明:尽管她的学生通过几年浸泡,获得的语言输入不是有限的,但他们并没获得如本族语者那种语言的产生能力。她认为,造成这样的原因不是学生获得的语言输入有限,而是他们的语言输出活动不足。她认为她的学生没有给予足够的机会在课堂环境中使用语言。再者,他们没有在输出活动中受到“推动”(Being Pushed)。
斯温纳认为语言输出有三个作用:(1)促进学习者对语言形式注意的功能;(2)提供学习者进行检验自己提出假设机会的功能;(3)提供学习者有意识反思机会的功能。
斯温纳的输出假设对外语教学的启示:
由于语言输出活动能帮助学习者提高其使用语言的流利程度,使学习者意识到自己在使用语言时存在的问题,使学习者能有更多机会来验证自己提出的假设,以语言对假设进行反思,因此,从认知的角度来看,语言输出对外语习得都是必需的。在外语教学中恰当地安排适当的语言输出活动能促进语言学习。不论在教学上还是在教材编写方面,要设计多种交际性的语言输出活动,以促进学生语言产生能力的培养。
七、第二语言的错误分析
1、一些学者对学习者的错误进行了较系统的分析,这就是“错误分析”(Error Analysis)。
语言学家科德(P. Corder)、理查兹(J. C. Richards)对学习者学习第二语言的错误进行研究和分析。他们发现虽然有些错误来自母语的干扰或负迁移,但很多错误是由于学习者在外语学习过程中对目的语的理解和消化不够全面而造成的。他们认为外语学习过程是一个漫长的把目的语(Target Language)的规则内在化的过程。在学习过程中,学生会使用一种过渡性的语言进行交际,这种过渡性语言即不是母语的翻译,又不是要掌握的目的语,它介乎于母语和目的语之间,可称为中介语(Interlangauge)。中介语随着学习者接收更多的第二语言输入,随着他们不断改变他们对第二语言的假设而发展。由于学生使用中介语,犯错误是不足为怪的。
科德把错误总结为三类:
第一类称为形成系统前的语言错误(Pre-systematic Errors)。
第二类称为系统的语言错误(Systematic Errors)。
第三类称为形成系统后的语法错误(Post-systematic Errors)。学习者所犯错误的原因:母语干扰过度概括、忽略规则的限制等。认清汉语的负迁移现象,减少英语教学中母语的干扰。
语言迁移一般有两种,即正迁移和负迁移。正迁移有利于外语学习,负迁移则会阻碍外语学习。负迁移的主要表现:
(1)语音层面上的负迁移现象。英语属“语调语言”,汉语属“声调语言”,book布克,bad拜德,增添音节:Work读成worker, bet读成better。
(2)词汇层面义的负迁移现象
A词的概念意义(或外延意义)不同或它所指的范围大小不等而造成的负迁移。Intellectual ,“知识分子”。
B词的内涵意义不同引起的负迁移: Every dog has his day. Love me, love
my dog.走狗、狗胆包天、狗仗人势、狗屁不通。
C词语搭配方面,将“公费医疗” 说成the public medical care, 将the man in the street说成“街上的人”。
(3)句法层面的负迁移现象
A混淆词性造成句子用词错误。
They study good. He speaks English good.
B语法功能词误用、漏用造成表达错误。
I not (或no)went to school yesterday.
There is a bird on the sky.
C语序错误造成表达不规范。
You must early get up.
D时态模糊,造成句子表达不规范,句意不明确。
What do you say to him, last night?
They go there with us yesterday.
八、第二语言(外语)阅读过程模式
1、自下而上的模式(The Bottom-up Model)
阅读是一个解码(Decoding)的过程(Brown 1997)。作者用文字、符号,应用一定的语法规则把自己要表达的意思编成语码。阅读者必须把语码进行解释。解释的过程是这样的:阅读者从最少的单位——字母和单词(从底或下层)识别开始,逐步弄懂(在顶或上层)较大的语言单位——短语、分句、句子和语篇的意义。这就是阅读理解自下而上的模式。
人们发现,在阅读时,语言问题解决了,但对文章的理解并不一定能够解决,对作者的意图并不一定都理解清楚。这个模式低估了阅读者的主动作用。
2、从上而下的模式(The Top-down Model)
哥德曼(K.S. Goodman)心理学阅读模式,把阅读描述为“一个心理的猜测游戏”,按这个模式,阅读者不必使用全部文本中的提示(Textual Cues),他们在文章中挑选和选择信息来作出预测,用他们自己的经验和有关客观世界的知识去验证他们的预测。按这个模式,阅读并不是逐字、逐句地去理解,而是结合自己的预测,在文章中找出有关的信息,来验证自己的预测。这就是从上而下的模式。
从上而下的模式,强调了高层次的技能,即用某些背景知识或文中的提示来对意义进行预测,对较低层次的能力如快速、准确地对词汇和语法结构识别的能力有所忽视。
3、相互作用的模式(The Interactive Model)相互作用模式也可称为图式理论模式(The Schema Theory Model)。
相互作用模式认为,在阅读过程中,人们运用两种方式进行信息处理,一种是自下而上的方式,另一种是从上而下的方式。两种信息处理的方式总是同时进行的。自下而上的信息处理保证读者能发现新的信息和发现与自己假设不同的信息,从上而下的信息处理帮助读者消除歧义并在可能的意义方面作出选择。阅读的过程是读者大脑已存在的知识和文章的信息相互作用的过程。人们大脑存在着的知识称为背景知识,这种知识的结构又称为图式。一个人在大脑里的图式越多、越完善,在阅读理解时被调用的可能性就越大,就越有可能保证对文章意义的正确理解。
Mary heard the ice cream man coming down the street. She
remembered her birthday money and rushed into the house…“…and locked the door”.
按图式理论模式,读者的阅读能力由三种图式来决定,它们是语言图式、内容图式和形式图式。语言图式指的是读者对阅读材料的掌握程度,内容图式指读者对文章涉及的主题熟悉的程度,而形式图式指的是读者对文章体裁的了解程度。
相互作用模式对外语阅读教学的意义:培养学生对语言图式、内容图式和形式图式的掌握。
九、第二语言聆听信息处理模式
第二语言聆听和阅读对信息处理有着相同的过程,即其理解都是自下而上和从上而下两种方式对信息处理相互作用的结果。但由于聆听接收到的信号是声音,它不同于阅读接触到的文字符号,因此,我们首先要把声音切分为章节和单词,然后才能把声音信号进行进一步的信息处理。
理查兹(Richards)把自下而上的聆听过程总结为以下的四个步骤:
(1)查寻语言输入,辨别熟悉的单词;
(2)将语流切分为成分(Constituents);
(3)使用音位线索辨别语句中的信息重点;
(4)使用语法线索将语言输入组织为成分。
要掌握连续、弱化、同化、停顿、节奏、重音、语调的特点。培养聆听理解解码的技巧。与阅读理解一样,在聆听理解教学中要向学习者提供必要的背景知识,培养他们“激活”有关“图式”来理解的能力。
《大学》首章:“物有本末,事有始终,知所先后,则近道矣。”在英语教学之路上,我们同样要知所先后。 外语学习理论 是探讨外语学习普遍性和规律性的研究,都能够帮助我们更加深入的认识到二外教学的”道“。
C. 中介语石化现象探因与口语教学误区 中介语石化
摘 要:中介语石化现象是在二语习得过程中难以避免的语言习得现象。许多语言学家针对这一语言现象提出了中介语石化理论。国内许多学者在石化现象方面做了许多实证研究,收集数据、分析石化现象成因,并根据石化理论,指出学习者在语言习得中存在的问题。本文综述了这些实证研究,并尝试性地总结出口语教学中存在的一些误区。
关键词:中介语 中介语石化 石化现象探因 口语教学误区
一、引言
把She说成he,在动词前加very,鼻音/n/和边音/l/不分。这些都是中国英语学习者在学习过程中经常遇到的语言问题。这些问题会随着年龄增长和学习量的增加而得到改善。其中有些错误却仍会不断出现在日常交际中。即使学习者能意识到他们这些错误,也会下意识地说出既不像汉语又不像英语的语言。Selinker称之为中介语(interlanguage)。这时,年龄增长和学习量的增加对改变这种语言学习状态不起任何作用,被称之为语言石化现象。本文拟通过分析中介语石化现象空清产生的原因,结合英语口语教学实际,指出当前英语口语教学中的一些误区。
二、中介语石化理论
中介语(interlanguage)一词的提法出自Selinker(1972),用来描述外语学习者在语言学习过程中产生和使用的一种语言体系。它既不同于母语,也不同于目的语,是一种介于两者之间的一种过渡性的语言。其它学者也有过类似的提法。如:Nemser(1971)曾用近似语言系统(approximate system)指代这一语言现象,Corder(1971)则称之为过渡语言能力(transitional competence)。
中介语是学习者习得目的语的必经之路。随着学习者学习时间的正确投入,这种语言系统会逐渐靠拢目的语的语言系统。学习者在学习过程中会不断调整自己的语言行为,使这种语言行为逐渐适合目的语的表达习惯,由错误逐渐向正确方向转化。理论上讲,随着学习者目的语知识量的增加,使用能力也会相拿答应得到提高,最终达到目的语的水平。而事实上,绝大部分学习者由于种种原因未能达到目的语这一理想水平。相反,学习者在他们的目的语水平提高到一定程度后,语言能力不是继续向前发展,而是表现出一种停滞不前的徘徊状态,即中介语石化现象(fossilization)。
中介语石化的概念最早由Selinker(1972)提出:无论学习者年龄的长幼,无论学习者得到多少有关目的语的指导和训练,在其目的语的中介语中总会出现与其母语有关的一些表达方式、规则和次系统。当学习者目的语水平有所提高时,这些现象或许看似已消除,但还会常常出现在目的语的中介语中。这些词语和表达结构长期重复使用,最后固定下来,形成语言石化。这一现象的出现阻止学习者的语言水平进一步提高。
三、中介语石化现象
以中国学生学习英语为例,中介语的发展基本上都遵循一定的模式(戴炜栋等,1999):中小学阶段,学习者的英语知识积累迅速,英语水平持续稳步提高。进入大学后,英语专业低年级学生的英语水平,尤其是听话水平进步明显,随后进入高原期(plateau);而非英语消亏慧专业的学生由于兴趣时间等因素的影响,英语能力基本处于稳定甚至下降状态。英语学习者经过努力可能会取得一些进步,却避免不了重复犯一些错误。比如:有的中国学生虽能毫无障碍地和英语母语者进行深层次的交流,但在口头交际中,仍会用错过去完成时和将来进行时。最主要的原因就是汉语中没有时态的概念。国内很多学者也在这方面做过实证研究,如:
丁容容,何福胜(2006)通过收集2000年至2005年清华大学非英语专业研究生的《高级英语交流》课程口语考试和课堂任务型口语测试50小时的语料,分析研究他们在英语口语中强势语的用法。该项研究发现:和本族语者相比,中国学习者口语中所运用的强调词较单一化,学习者超用和误用了very一词,将“very”和汉语的“很,非常”等同,误将very修饰动词和比较级。
李巧兰(2004)抽样调查了中国英语学习者话语标记语在口语中的使用情况。通过对比分析英语为母语者的语料,发现母语使用标记语的总次数明显多于英语学习者,分别是中级和高级英语学习者的3.5倍和2.6倍,说明英语学习者的话语标记语语用次系统无法达到母语者标准,存在语用石化现象。
高翔、刘韶方(2006)以问卷调查形式获取英语专业学生请求语用表达能力情况,将其与英语母语者的使用情况进行对比,发现半数以上的学生将不同情况下表达的请求统统等同于某种表达形式,并在多个回答中重复使用,存在语用石化。
语用石化的问题同样引起了黄莹、张新宇的兴趣。他们选取了中国矿大英语专业四个年级的学生,通过问卷调查、课堂观察、访谈相结合的形式,调查学生英语语用能力(2004)。结果表明学生的语用能力在大二达到最高,之后开始明显下降,大三到大四有所回升,但基本没有超过大二的语用水平,说明学生的英语语用能力在石化。
四、石化现象成因解释
对中介语石化现象的解释很大程度上取决于对石化现象的定义,观察和描述。而石化现象的定义正像语言学其它术语的概念一样,由于对石化现象本身缺乏统一的认识,尚不能确定石化现象究竟是一个发展过程,还是发展的结果;是语言能力层次的现象,还是属于语用现象范畴。因此对于石化现象成因的解释存在很大分歧。研究者们从不同角度各个层面对这一现象做了详尽的解释。一系列的因素已被确定为是导致学习者中介语石化的原因。这些因素在整体上被分为内因和外因两大类。
1. 石化现象内因说
Ellis总结了两点造成石化现象的内因:年龄因素和缺乏与目的语社会文化相融合的欲望。而以Lenneberg和Lamendella为代表的“生物论”者,把语言石化看作是人内在的生物和生理因素所造成的结果,从生物成长的角度来解释语言问题和石化现象。他们认为孩子成长有个关键期(critical period),大约在两岁左右,大脑的功能分工基本完成,语言功能定位在左脑,再学习其它语言会变得相对困难。
“生物论”常常用于解释发音石化现象。绝大多数学习者无论花多少时间和精力都无法去掉本土口音。主要是因为大脑双侧分工已经固定永久化,发音器官已经习惯其本族语发音方式,口腔肌肉已失去弹性。“生物论”的主要问题是难以解释学习者个体差异现象。
缺乏与目的语文化融合(acculturation)的欲望,即对目的语所持的社会心理距离,使学习者不愿努力地采用目的语的文化模式。该观点认为语言和文化不可分,石化的形成是多种社会心理因素作用的结果。简单说即为学习者学习动机和文化迁移对石化形成的影响。这解释了为什么学习者使用有限的语言文化知识进行交际,最终形成语用石化的原因。
2. 石化现象外因说
外因说强调社会文化环境对学习者心理的影响。Ellis将外因归纳为(1)交际压力;(2)缺乏学习机会;(3)反馈性质对学习者第二语使用的影响。反馈性质又被称作交互说,以学习者得到的反馈形式来说明语言的发展或石化情况。如:学习者与教师和同学之间的不正确语言输出有时被当作正确的语言输入,导致一些错误沉淀石化。人际交流的过程传递着情感,对学习者产生肯定、中立或否定的心理作用。不同的反应对二语习得者有不同程度的如正面的、中立的或负面的加强作用,成为石化形成的一个重要原因。
另外根据Krashen的i+1理论,人们习得语言的唯一途径就是通过获得大量的i+1水平的可理解性输入。因此目的语输入数量不足,质量不适也同样会引起学习者二语的石化。试想如果二语习得者能够接触大量自然语境下的语言输入和二语环境,提高二语使用的熟练程度将不再高不可攀;在较短时间内较快接近母语者水平,将不再是天方夜谭。从这个意义上讲,对教师和教学环境提出了更高的要求。
五、石化现象成因对口语教学的启示
口语不像笔语,可以允许更多的思考和准备时间,二语习得者在口头交际中会暴露出更多的中介语石化问题。因而,分析石化现象产生的原因会对口语教学有更大的启示。
从以上对石化现象的种种解释来看,在很大程度上,教学方式和教学内容会影响石化现象的产生。如果能及时纠正在培养二语学习者在习得二语过程中存在的一些片面观点和做法,可以部分地防止和阻止二语习得者口语能力的石化。
1. 处理好教师话语与学生话语的关系
作为外语教师只是比学生在通往目的语的道路上走得远了一些。提高教师队伍的口语素质当然成了首要任务。这是其一。其二,过分强调交际能力的口语教学主张,在课堂上要尽量减少教师话语时间,增加学生交谈时间。这一点忽视了学生作为学习者,仍处在语言学习过程中这个事实,忽视了母语学习与外语学习之间的差异。过多的学生话语不仅导致不正确的语汇、语法形式的输入,还有受到母语影响的语音语调迁移也会使学生无法辨别地道的语音语调,加上学生缺乏对目的语国家文化背景的了解,容易产生语用方面的负迁移,从而产生石化。
因而,适当在学生练习任务结束之后,及时总结归纳学生犯的语法语用错误是非常有必要的。还有在分组安排配对练习的时候,尽量避免口语能力相对较弱的学生被分到一组或一对。考虑到学生口语水平的差别,在人员安排上要体现出层次性。
2. 尽量减少母语负迁移影响
母语迁移是讨论石化现象绕不开的问题。母语干扰是石化的重要来源。第一语言和第二语言(外语)的相似性程度决定二语习得者掌握这门外语的难易程度,以及第一语言对第二语言习得和石化会产生多大的影响。
汉语和英语的差别较大,决定了中国英语学习者说一口中式英语的可能性也很大。教师在教学过程中一味向学生灌输英语口语的正确表达形式未必能收到事半功倍的效果。因为处在学习阶段的学习者仍在通过母语的语法语汇体系理解二语的语言现象。告知学生母语和目的语之间的区别和联系,比起单单讲授目的语的语用交际知识和规则,要省力得多。
3. 不适当的认知反馈和情感反馈
在如何对待语言学习者的错误问题上,一直存在着两种对立的观点。一类观点是把学习者犯错误视为洪水猛兽,有错必纠。另一类认为应该以学习者为中心,最大限度地吸引学生参与到课堂讨论中来,从而有效地提高学生口头交际能力,教师对错误的表达听之任之。这两种观点显然都走了极端。现代外语教学在经历了语法――翻译法、情景语言教学法、交际法、全身反应法、听说法等阶段后,教师在面对学生的语言错误时,反而变得不知所措。
由前文可知,反馈对交际者可以产生肯定、中立及否定的心理作用,不同的反馈会对学习者的语言使用有着不同程度的加强作用,或正面的,或中立的,或负面的。既如此,教师应当采取折衷的态度,既指出学生的错误,又要在不打击学习积极性的前提下。唯此,教师才能尽可能地在教学过程中避免石化现象的发生。
六、结语
中介语石化理论是近些年二语习得领域讨论的热点。由于问题自身的复杂性,目前对此方面的研究还有待进一步探讨。分析和阐释中介语石化现象的成因,无疑对当前以培养交际能力为唯一目标的口语教学有着重要意义和启发,能帮助教学工作者们意识到该教学法的误区和实际操作中的缺陷,旨在促进口语教学既重视学生交际能力的培养,又注重学生语言能力的发展,双管齐下。
参考文献:
[1]Ellis,R. Understanding Second Language Acquisition[M]. 上海:上海外语教育出版社,1999.
[2] 戴炜栋,牛强.过渡语的石化现象及其教学启示[J].外语研究,1999,(2).
[3]丁容容,何福胜.中国学习者英语口语中强势语的用法研究[J].外语教学,2006,(9).
[4]李巧兰.英语学习者话语标记语语用石化现象初探――基于真实口语语料的调查分析[J].解放军外国语学院学报,2004,(5).
[5]高翔,刘韶方.英语专业学习者请求语用石化现象探究[J].中国矿业大学学报(社会科学版),2006,(12).
[6]黄莹,张新宇.英语专业学生语用能力石化现象研究[J].河海大学学报(哲学社会科学版),2004,(3).
[7]陈慧媛.关于语言僵化现象起因的理论探讨[J].外语教学与研究,1999,(3).
[8]张雪梅.语言石化现象的认知研究[J].外国语,2000,(4).
[9]李炯英.中介语石化现象研究30年综观[J].国外外语教学,2003,(4).
[10]杨文秀.中介语石化现象与口语教学[J].外语与外语教学,2000,(9).
[11]牛强.过渡语的石化现象及其教学启示[J].外语与外语教学,2000,(5).
[12]文培红.从中介语石化理论看当前外语教学的三大误区[J].西南民族大学学报(人文社科版),2003,(10).
D. 房产中介广告语设计
房产中介广告语可以有如下写法:
你们的舒心,我们的放心,我公司为您提供家的温馨服务!
住过才知道这是最好的!
与您携手,真情相约,让家重生。
安居,我们做的更好。晌伏
想要有个家吗?我们已为你准备了温馨小巢。
新家旧家住的舒服,看着漂亮,经济实用,就是好家!
二手房经纪公司,因为真心,所以省心!
每一座伟大的城市,野谨差都有一个伟大的房产公司!
爱的小屋,住的安心!
专业房产,精益求精。
为您的家居带来安心的感觉。
买得放心,住得安心,一切更省心。
安天下居,居天下家。
爱(放/省)心房产,二手传递。
你的梦想,你的生活。
千家万家,这有你温颂皮馨的家!
放心到这里,安居我帮你。
珍重所托,如同已出。
美好生活,轻松拥有点缀你我,美好生活。
家,是放心的地方。
E. 中介语和偏误分析的关系
回答:这两个概念的关系在于,中介语的产生往往伴随着学习者的偏误,而偏误分喊团析可以通过分析学习者的中介语来深入了解学习者在学习第二语言时所面临的困难和问题,并为教学提供有针对性的指导。
解析:中介语是学习第二语言时的一种常见现象,学习者在使用目标语言时会受到母语的影响,导致语言结构上的混淆。例如,中文中的“我很喜欢吃面条”直译成英文就是“I very like to eat noodles”,但这种表达方式是不符合英语语法规则的。正确让亮的表达应该是“I like eating noodles very much”,其中,“like”和“eating”之间需要加上动词-ing形式的连词,而“very much”应该放在句子末尾。这种混淆语言结构的现象就是中介语。而偏误分析则是研究学习者在学习第二语言时所犯的错误及其产生原因的过程。通过分析学习者的偏误,可以了解学习者在语言学习过程中所面临的困难和问题,为教学提郑滑橘供有针对性的指导。而中介语的产生往往伴随着学习者的偏误,因此偏误分析可以通过分析学习者的中介语来深入了解学习者的偏误及其产生原因。
扩展:中介语和偏误分析在第二语言习得研究领域中具有重要的意义。通过对中介语和偏误的研究,可以深入了解第二语言学习的过程和规律,为教学提供科学的指导。此外,中介语和偏误分析也具有跨学科的特点,涉及到语言学、心理学、教育学等多个学科领域。因此,对中介语和偏误分析的研究不仅有助于促进语言学习和教学的发展,也有助于推动跨学科研究的发展。
F. 为什么佛里德曼认为货币政策的最佳中介指标
弗里德曼应该是认为货币政策的最佳中介指标是货币供给量Ms吧,因为他是货币学派的代表
Ms会直接影响E从而影响I最后影响Y,Money supply增加(货币学派认为人们的货币需求Md是一个相对稳定的值),所以人们手中持有的货币的量会超过人们期望或者愿意持有的量困腊镇,就会拿这个汪粗钱消费,E增加,增加的一部分钱拿出去投资,因此I增加,I增加透过投局卖资乘数,调整资产结构,从而最终引起Y变化。
但是央行对于Ms的影响只能通过B或者H来影响,而货币乘数中的C/D取决于私人部门的行为,R/D取决于存款货币银行的行为,因此控制比较难。
而Ms作为中介指标的优点主要是M0和M1的数据统计是常态,可测性比较好,而且直接影响到物价P,相关性也比较好。
G. 语言现象是什么
语言现象就是指语言在语音、词汇、语法等方面所表现出来的状况。
语言现象就是一种特殊的人类活动的现象。新的语言现象就是随着社会的发展变化,这种特殊的人类活动的现象也随着发展变化的必然现象。
如多音字就是一种语言现象,比如“还”字,取义“依然、仍然 、更加、再、又、 尚”时读 “ hái”,取义“回到原处或恢复原状、回报别人对自己的行动、 偿付”时读“huán”。
再比如古代汉语中的倒装句也是一种语言现象,如“孔子云:何陋之有?”随着社会的发展,尤其是网络的普及,又出现了很多新的语言现象,如“雷人”、“给力”、“斑竹”、“神马都是浮云”等。
(7)中介语言最佳数据是多少扩展阅读
1、中介语现象:
在外语学习过程中首埋粗,一些学习者往往用母语的文字去记录外者镇语的语音,结果读出的外语语音既不同于母语也不同于外语。例如:把英语的goodbye注为“古液颤的白”。这种既不同于母语又不同于外语而只属于个人的语言系统,充分体现了语言学中的“中介语现象”。
2、语言迁移现象:
汉语方言较重的地区,一些人在英语的发音上总是带着方言的尾调,这是语言学中“语言迁移现象”的体现。在外语学习的过程中,作为来源语的母语会对作为目标语的外语产生影响,这就是语言迁移现象,其中积极的影响叫正迁移,消极的影响叫负迁移。
H. 数据结构
何谓数据结构
?
数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由那些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。数据结构是数据存在的形式。 数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。
?
数据结构主要研究什么?
?
数据结构作为一门学科主要研究数据的各种逻辑结构和存储结构,以及对数据的各种操作。因此,主要有三个方面的内容:数据的逻辑结构;数据的物理存储结构;对数据的操作(或算法)。通常,算法的
?
设计取决于数据的逻辑结构,算法的实现取决于数据的物理存储结构。
?
什么是数据结构?什么是逻辑结构和物理结构?
?
数据是指由有限的符号(比如,"0"和"1",具有其自己的结构、操作、和相应的语义)组成的元素的集合。结构是元素之间的关系的集合。通常来说,一个数据结构DS 可以表示为一个二元组:
?
DS=(D,S), //i.e., data-structure=(data-part,logic-structure-part) 这里D是数据元素的集合(或者是“结点”,可能还含有“数据项”或“数据域”),S是定义在D(或其他集合)上的关系的集合,S = { R | R : D×D×...},称之为元素的逻辑结构。 逻辑结构有四种基本类型:集合结构、线性结构、树状结构和网络结构。表和树是最常用的两种高效数据结构,许多高效的算法可以用这两种数据结构来设计实现。表是线性结构的(全序关系),树(偏序或层次关系)和图(局部有序(weak/local orders))是非线性结构。
?
数据结构的物理结构是指逻辑结构的存储镜像(image)。数据结构 DS 的物理结构 P对应于从 DS 的数据元素到存储区M(维护着逻辑结构S)的一个映射:
?
(PD,S) -- > M 存储器模型:一个存储器 M 是一系列固定大小的存储单元,每个单元 U 有一个唯一的地址 A(U),该地址被连续地编码。每个单元 U 有一个唯一的后继单元 U'=succ(U)。 P 的四种基本映射模型:顺序(sequential)、链接(linked)、索引(indexed)和散列(hashing)映射。
?
因此,我们至少可以得到4×4种可能的物理数据结构:
?
sequential (sets)
linked lists
indexed trees
hash graphs
?
(并不是所有的可能组合都合理)
?
??? 数据结构DS上的操作:所有的定义在DS上的操作在改变数据元素(节点)或节点的域时必须保持DS的逻辑和物理结构。
?
DS上的基本操作:任何其他对DS的高级操作都可以用这些基本操作来实现。最好将DS和他的所有基本操作看作一个整体——称之为模块。我们可以进一步将该模块抽象为数据类型(其中DS的存储结构被表示为私有成员,基本操作被表示为公共方法),称之为ADT。作为ADT,堆栈和队列都是一种特殊的表,他们拥有表的操作的子集。 对于DATs的高级操作可以被设计为(不封装的)算法,利用基本操作对DS进行处理。
?
好的和坏的DS:如果一个DS可以通过某种“线性规则”被转化为线性的DS(例如线性表),则称它为好的DS。好的DS通常对应于好的(高效的)算法。这是由计算机的计算能力决定的,因为计算机本质上只能存取逻辑连续的内存单元,因此如何没有线性化的结构逻辑上是不可计算的。比如对一个图进行操作,要访问图的所有结点,则必须按照某种顺序来依次访问所有节点(要形成一个偏序),必须通过某种方式将图固有的非线性结构转化为线性结构才能对图进行操作。
?
树是好的DS——它有非常简单而高效的线性化规则,因此可以利用树设计出许多非常高效的算法。树的实现和使用都很简单,但可以解决大量特殊的复杂问题,因此树是实际编程中最重要和最有用的一种数据结构。树的结构本质上有递归的性质——每一个叶节点可以被一棵子树所替代,反之亦然。实际上,每一种递归的结构都可以被转化为(或等价于)树形结构。
?
从机器语言到高级语言的抽象
?
我们知道,算法被定义为一个运算序列。这个运算序列中的所有运算定义在一类特定的数据模型上,并以解决一类特定问题为目标。这个运算序列应该具备下列四个特征。 有限性,即序列的项数有限,且每一运算项都可在有限的时间内完成;确定性,即序列的每一项运算都有明确的定义,无二义性;可以没有输入运算项,但一定要有输出运算项;可行性,即对于任意给定的合法的输入都能得到相应的正确的输出。这些特征可以用来判别一个确定的运算序列是否称得上是一个算法。 但是,我们现在的问题不是要判别一个确定的运算序列是否称得上是一个算法,而是要对一个己经称得上是算法的运算序列,回顾我们曾经如何用程序设计语言去表达它。
?
算法的程序表达,归根到底是算法要素的程序表达,因为一旦算法的每一项要素都用程序清楚地表达,整个算法的程序表达也就不成问题。
?
作为运算序列的算法,有三个要素。 作为运算序列中各种运算的运算对象和运算结果的数据;运算序列中的各种运算;运算序列中的控制转移。这三种要素依序分别简称为数据、运算和控制。 由于算法层出不穷,变化万千,其中的运算所作用的对象数据和所得到的结果数据名目繁多,不胜枚举。最简单最基本的有布尔值数据、字符数据、整数和实数数据等;稍复杂的有向量、矩阵、记录等数据;更复杂的有集合、树和图,还有声音、图形、图像等数据。 同样由于算法层出不穷,变化万千,其中运算的种类五花八门、多姿多彩。最基本最初等的有赋值运算、算术运算、逻辑运算和关系运算等;稍复杂的有算术表达式和逻辑表达式等;更复杂的有函数值计算、向量运算、矩阵运算、集合运算,以及表、栈、队列、树和图上的运算等:此外,还可能有以上列举的运算的复合和嵌套。 关于控制转移,相对单纯。在串行计算中,它只有顺序、分支、循环、递归和无条件转移等几种。
?
我们来回顾一下,自从计算机问世以来,算法的上述三要素的程序表达,经历过一个怎样的过程。
?
最早的程序设计语言是机器语言,即具体的计算机上的一个指令集。当时,要在计算机上运行的所有算法都必须直接用机器语言来表达,计算机才能接受。算法的运算序列包括运算对象和运算结果都必须转换为指令序列。其中的每一条指令都以编码(指令码和地址码)的形式出现。与算法语言表达的算法,相差十万八千里。对于没受过程序设计专门训练的人来说,一份程序恰似一份"天书",让人看了不知所云,可读性
?
极差。
?
用机器语言表达算法的运算、数据和控制十分繁杂琐碎,因为机器语言所提供的指令太初等、原始。机器语言只接受算术运算、按位逻辑运算和数的大小比较运算等。对于稍复杂的运算,都必须一一分解,直到到达最初等的运算才能用相应的指令替代之。机器语言能直接表达的数据只有最原始的位、字节、和字三种。算法中即使是最简单的数据如布尔值、字符、整数、和实数,也必须一一地映射到位、字节和字
中,还得一一分配它们的存储单元。对于算法中有结构的数据的表达则要麻烦得多。机器语言所提供的控制转移指令也只有无条件转移、条件转移、进入子程序和从子程序返回等最基本的几种。用它们来构造循环、形成分支、调用函数和过程得事先做许多的准备,还得靠许多的技巧。 直接用机器语言表达算法有许多缺点。
?
大量繁杂琐碎的细节牵制着程序员,使他们不可能有更多的时间和精力去从事创造性的劳动,执行对他们来说更为重要的任务。如确保程序的正确性、高效性。程序员既要驾驭程序设计的全局又要深入每一个局部直到实现的细节,即使智力超群的程序员也常常会顾此失彼,屡出差错,因而所编出的程序可靠性差,且开发周期长。 由于用机器语言进行程序设计的思维和表达方式与人们的习惯大相径庭,只有经过
较长时间职业训练的程序员才能胜任,使得程序设计曲高和寡。因为它的书面形式全是"密"码,所以可读性差,不便于交流与合作。因为它严重地依赖于具体的计算机,所以可移植性差,重用性差。这些弊端造成当时的计算机应用未能迅速得到推广。
?
克服上述缺点的出路在于程序设计语言的抽象,让它尽可能地接近于算法语言。 为此,人们首先注意到的是可读性和可移植性,因为它们相对地容易通过抽象而得到改善。于是,很快就出现汇编语言。这种语言对机器语言的抽象,首先表现在将机器语言的每一条指令符号化:指令码代之以记忆符号,地址码代之以符号地址,使得其含义显现在符号上而不再隐藏在编码中,可让人望"文"生义。其次表现在这种语言摆脱了具体计算机的限制,可在不同指令集的计算机上运行,只要该计算机配上汇编语言的一个汇编程序。这无疑是机器语言朝算法语言靠拢迈出的一步。但是,它离算法语言还太远,以致程序员还不能从分解算法的数据、运算和控制到汇编才能直接表达的指令等繁杂琐碎的事务中解脱出来。 到了50年代中期,出现程序设计的高级语言如Fortran,Algol60,以及后来的PL/l, Pascal等,算法的程序表达才产生一次大的飞跃。
?
诚然,算法最终要表达为具体计算机上的机器语言才能在该计算机上运行,得到所需要的结果。但汇编语言的实践启发人们,表达成机器语言不必一步到位,可以分两步走或者可以筑桥过河。即先表达成一种中介语言,然后转成机器语言。汇编语言作为一种中介语言,并没有获得很大成功,原因是它离算法语
?
言还太远。这便指引人们去设计一种尽量接近算法语言的规范语言,即所谓的高级语言,让程序员可以用它方便地表达算法,然后借助于规范的高级语言到规范的机器语言的"翻译",最终将算法表达为机器语言。而且,由于高级语言和机器语言都具有规范性,这里的"翻译"完全可以机械化地由计算机来完成,就像汇编语言被翻译成机器语言一样,只要计算机配上一个编译程序。 上述两步,前一步由程序员去完成,后一步可以由编译程序去完成。在规定清楚它们各自该做什么之后,这两步是完全独立的。它们各自该如何做互不相干。前一步要做的只是用高级语言正确地表达给定的算法,产生一个高级语言程序;后一步要做的只是将第一步得到的高级语言程序翻译成机器语言程序。至于程序员如何用高级语言表达算法和编译程序如何将高级语言表达的算法翻译成机器语言表达的算法,显然毫不相干。
?
处理从算法语言最终表达成机器语言这一复杂过程的上述思想方法就是一种抽象。汇编语言和高级语言的出现都是这种抽象的范例。 与汇编语言相比,高级语言的巨大成功在于它在数据、运算和控制三方
?
面的表达中引入许多接近算法语言的概念和工具,大大地提高抽象地表达算法的能力。 在运算方面,高级语言如Pascal,除允许原封不动地运用算法语言的四则运算、逻辑运算、关系运算、算术表达式、逻辑表达式外,还引入强有力的函数与过程的工具,并让用户自定义。这一工具的重要性不仅在于它精简了重复的程序文本段,而且在于它反映出程序的两级抽象。
?
在函数与过程调用级,人们只关心它能做什么,不必关心它如何做。只是到函数与过程的定义时,人们才给出如何做的细节。用过高级语言的读者都知道,一旦函数与过程的名称、参数和功能被规定清楚,那么,在程序中调用它们便与在程序的头部说明它们完全分开。你可以修改甚至更换函数体与过程体,而不影响它们的被调用。如果把函数与过程名看成是运算名,把参数看成是运算的对象或运算的结果,那么
?
,函数与过程的调用和初等运算的引用没有两样。利用函数和过程以及它们的复合或嵌套可以很自然地表达算法语言中任何复杂的运算。
?
在数据方面,高级语言如Pascal引人了数据类型的概念,即把所有的数据加以分类。每一个数据(包括表达式)或每一个数据变量都属于其中确定的一类。称这一类数据为一个数据类型。 因此,数据类型是数据或数据变量类属的说明,它指示该数据或数据变量可能取的值的全体。对于无结构的数据,高级语言如Pascal,除提供标准的基本数据类型--布尔型、字符型、整型和实型外,还提供用户可自定义的枚举类、子界类型和指针类型。这些类型(除指针外),其使用方式都顺应人们在算法语言中使用的习惯。对于有结构的数据,高级语言如Pascal,提供了数组、记录、有限制的集合和文件等四种标准的结构数据类型。其中,数组是科学计算中的向量、矩阵的抽象;记录是商业和管理中的记录的抽象;有限制的集合是数学中足够小的集合的势集的抽象;文件是诸如磁盘等外存储数据的抽象。
?
人们可以利用所提供的基本数据类型(包括标准的和自定义的),按数组、记录、有限制的集合和文件的构造规则构造有结构的数据。 此外,还允许用户利用标准的结构数据类型,通过复合或嵌套构造更复杂更高层的结构数据。这使得高级语言中的数据类型呈明显的分层。 高级语言中数据类型的分层是没有穷尽的,因而用它们可以表达算法语言中任何复杂层次的数据。 在控制方面,高级语言如Pascal,提供了表达算法控制转移的六种方式。
?
(1)缺省的顺序控制";"。
?
(2)条件(分支)控制:"if表达式(为真)then S1 else S2;" 。
?
(3)选择(情况)控制:
?
"Case 表达式 of
?
值1: S1
值2: S2
...
值n: Sn
end"
?
(4)循环控制:
?
"while 表达式(为真) do S;" 或
"repeat S until 表达式(为真);" 或
"for变量名:=初值 to/downto 终值do S;"
?
(5)函数和过程的调用,包括递归函数和递归过程的调用。
?
(6)无条件转移goto。
这六种表达方式不仅覆盖了算法语言中所有控制表达的要求,而且不再像机器语言或汇编语言那样原始、那样繁琐、那样隐晦,而是如上面所看到的,与自然语言的表达相差无几。 程序设计语言从机器语言到高级语言的抽象,带来的主要好处是: 高级语言接近算法语言,易学、易掌握,一般工程技术人员只要几周时间的培训就可以胜任程序员的工作;高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序可读性好,可维护性强,可靠性高;高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好,重用率高; 由于把繁杂琐碎的事务交给了编译程序去做,所以自动化程度高,开发周期短,且程、序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高、程序的质量。
?
数据结构、数据类型和抽象数据类型
?
数据结构、数据类型和抽象数据类型,这三个术语在字面上既不同又相近,反映出它们在含义上既有区别又有联系。
?
数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由哪些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,物理上的数据结构反映成分数据在计算机内的存储安排。数据结构是数据存在的形式。
?
数据是按照数据结构分类的,具有相同数据结构的数据属同一类。同一类数据的全体称为一个数据类型。在程序设计高级语言中,数据类型用来说明一个数据在数据分类中的归属。它是数据的一种属性。这个属性限定了该数据的变化范围。为了解题的需要,根据数据结构的种类,高级语言定义了一系列的数据类型。不同的高级语言所定义的数据类型不尽相同。Pascal语言所定义的数据类型的种类。
?
其中,简单数据类型对应于简单的数据结构;构造数据类型对应于复杂的数据结构;在复杂的数据结构里,允许成分数据本身具有复杂的数据结构,因而,构造数据类型允许复合嵌套;指针类型对应于数据结构中成分数据之间的关系,表面上属简单数据类型,实际上都指向复杂的成分数据即构造数据类型中的数据,因此这里没有把它划入简单数据类型,也没有划入构造数据类型,而单独划出一类。
?
数据结构反映数据内部的构成方式,它常常用一个结构图来描述:数据中的每一项成分数据被看作一个结点,并用方框或圆圈表示,成分数据之间的关系用相应的结点之间带箭号的连线表示。如果成分数据本身又有它自身的结构,则结构出现嵌套。这里嵌套还允许是递归的嵌套。
?
由于指针数据的引入,使构造各种复杂的数据结构成为可能。按数据结构中的成分数据之间的关系,数据结构有线性与非线性之分。在非线性数据结构中又有层次与网状之分。 由于数据类型是按照数据结构划分的,因此,一类数据结构对应着一种数据类型。数据类型按照该类型中的数据所呈现的结构也有线性与非线性之分,层次与网状之分。一个数据变量,在高级语言中的类型说明必须是读变量所具有的数据结构所对应的数据类型。最常用的数据结构是数组结构和记录结构。数组结构的特点是:
?
成分数据的个数固定,它们之间的逻辑关系由成分数据的序号(或叫数组的下标)来体现。这些成分数据按照序号的先后顺序一个挨一个地排列起来。每一个成分数据具有相同的结构(可以是简单结构,也可以是复杂结构),因而属于同一个数据类型(相应地是简单数据类型或构造数据类型)。这种同一的数据类型称为基类型。所有的成分数据被依序安排在一片连续的存储单元中。 概括起来,数组结构是一个线性的、均匀的、其成分数据可随机访问的结构。
?
由于这、种结构有这些良好的特性,所以最常被人们所采用。在高级语言中,与数组结构相对应的、数据类型是数组类型,即数组结构的数据变量必须说明为array [i] of T0 ,其中i是数组、结构的下标类型,而T0是数组结构的基类型。 记录结构是另一种常用的数据结构。它的特点是:与数组结构一样,成分数据的个数固定。但成分数据之间没有自然序,它们处于平等地位。每一个成分数据被称为一个域并赋予域名。不同的域有不同的域名。不同的域允许有不同的结构,因而允许属于不同的数据类型。与数组结构一样,它们可以随机访问,但访问的途径靠的是域名。在高级语言中记录结构对应的数据类型是记录类型。记录结构的数据的变量必须说明为记录类型。
?
抽象数据类型的含义在上一段已作了专门叙述。它可理解为数据类型的进一步抽象。即把数据类型和数据类型上的运算捆在一起,进行封装。引入抽象数据类型的目的是把数据类型的表示和数据类型上运算的实现与这些数据类型和运算在程序中的引用隔开,使它们相互独立。对于抽象数据类型的描述,除了必须描述它的数据结构外,还必须描述定义在它上面的运算(过程或函数)。抽象数据类型上定义的过程和函
数以该抽象数据类型的数据所应具有的数据结构为基础。
?
泛型设计和数据结构与算法
?
下面我想再说说关于泛型程序设计模型对于数据结构和算法方面的最新推动,泛型思想已经把数据结
?
构和算法方面的基本思想抽象到了一个前所未有的高度,现在有多种程序设计语言支持泛型设计,比如
ADA,C++,而且据说在JAVA的下一版本和C#中也将对泛型设计进行全面的支持。
?
先说说泛型设计的基本思想:泛型编程(generic programming,以下直接以GP称呼)是一种全新的程序设计思想,和OO,OB,PO这些为人所熟知的程序设计想法不同的是GP抽象度更高,基于GP设计的组件之间偶合度底,没有继承关系,所以其组件间的互交性和扩展性都非常高。我们都知道,任何算法都是作用在一种特定的数据结构上的,最简单的例子就是快速排序算法最根本的实现条件就是所排序的对象是存
贮在数组里面,因为快速排序就是因为要用到数组的随机存储特性,即可以在单位时间内交换远距离的对象,而不只是相临的两个对象,而如果用联表去存储对象,由于在联表中取得对象的时间是线性的既O[n],这样将使快速排序失去其快速的特点。也就是说,我们在设计一种算法的时候,我们总是先要考虑其应用的数据结构,比如数组查找,联表查找,树查找,图查找其核心都是查找,但因为作用的数据结构不同
?
将有多种不同的表现形式。数据结构和算法之间这样密切的关系一直是我们以前的认识。泛型设计的根本思想就是想把算法和其作用的数据结构分离,也就是说,我们设计算法的时候并不去考虑我们设计的算法将作用于何种数据结构之上。泛型设计的理想状态是一个查找算法将可以作用于数组,联表,树,图等各种数据结构之上,变成一个通用的,泛型的算法。这样的理想是不是很诱惑人?
?
泛型编程带来的是前所未有的弹性以及不会损失效率的抽象性,GP和OO不同,它不要求你通过额外的间接层来调用函数:它让你撰写完全一般化并可重复使用的算法,其效率与针对特定数据结构而设计的算法旗鼓相当。我们大家都知道数据结构在C++中可以用用户定义类型来表示,而C++中的模板技术就是以类型作为参数,那么我可以想象利用模板技术可以实现我们开始的GP思想,即一个模板函数可以对于各种传递进来的类型起作用,而这些类型就可以是我们定义的各种数据结构。
?
泛型算法抽离于特定类型和特定数据结构之外,使得其适应与尽可能的一般化类型,算法本身只是为了实现算法其需要表达的逻辑本质而不去被为各种数据结构的实现细节所干扰。这意味着一个泛型算法实际具有两部分。1,用来描叙算法本质逻辑的实际指令;2,正确指定其参数类型必须满足的性质的一组需求条件。到此,相信有不少人已经开始糊涂了,呵呵,不要紧。毕竟GP是一种抽象度非常高的程序设计思想,里面的核心就是抽象条件成为成为程序设计过程中的核心,从而取代了类型这在OO里面的核心地位,正是因为类型不在是我们考虑的重点,类型成为了抽象条件的外衣,所以我们称这样的程序思想为泛型思想------把类型泛化。
这样可以么?