文档库 最新最全的文档下载
当前位置:文档库 › Smali语法学习与DEX文件详解

Smali语法学习与DEX文件详解

Smali语法学习与DEX文件详解
Smali语法学习与DEX文件详解

Smali语法学习与DEX文件详解

什么是Smali语言

Smali代码是Android的Dalvik虚拟机的可执行文件DEX文件反汇编后的代码。所以Smali语言就是Dalvik的反汇编语言。

使用Apktool反编译apk 文件后,会在反编译工程目录下生成一个smali 文件夹,里面存放着所有反编译出的smali 文件,这些文件会根据程序包的层次结构生成相应的目录,程序中所有的类都会在相应的目录下生成独立的smali 文件。

Smali语法格式

可参考网址:

https://www.wendangku.net/doc/f76376738.html,/showthread.php?p=1117963

1.Dalvik字节码

Davlik字节码中,寄存器都是32位的,能够支持任何类型,64位类型(Long/Double)用2个寄存器表示;

Dalvik字节码有两种类型:原始类型;引用类型(包括对象和数组)

原始类型:v void 只能用于返回值类型

Z boolean

B byte

S short

C char

I int

J long(64位)

F float

D double(64位)

对象类型:Lpackage/name/ObjectName;相当于java中的https://www.wendangku.net/doc/f76376738.html,.ObjectName;解释如下:

L:表示这是一个对象类型package/name:该对象所在的包

;:表示对象名称的结束

2.数组的表示形式:

[I :表示一个整形的一维数组,相当于java的int[];对于多维数组,只要增加[ 就行了,[[I = int[][];注:每一维最多255个;

对象数组的表示形式:[Ljava/lang/String表示一个String的对象数组;

3.方法的表示形式:

Lpackage/name/ObjectName;——>methodName(III)Z;详解如下:

Lpackage/name/ObjectName 表示类型

methodName 表示方法名

III 表示参数(这里表示为3个整型参数)说明:方法的参数是一个接一个的,中间没有隔开;

4.字段的表示形式:

Lpackage/name/ObjectName;——>FieldName:Ljava/lang/String;即表示:包名,字段名

和各字段类型

5.寄存器指定

有两种方式指定一个方法中有多少寄存器是可用的:

.registers 指令指定了方法中寄存器的总数

.locals 指令表明了方法中非参寄存器的总数,出现在方法中的第一行

6.方法的表示

方法有直接方法和虚方法两种,直接方法的声明格式如下:

.method<访问权限>[修饰关键字]<方法原型>

<.locals>

[.parameter]

[.prologue]

[.line]

<代码体>

.end method

访问权限有public、private等,修饰关键字有static、constructor等。方法原型描述了方法的名称、参数与返回值。

..registers指定了方法中寄存器的总数

.locals指定了方法中非参寄存器的总数(局部变量的个数);

.parameter指定了方法的参数;

.prologue指定了代码的开始处;

.line指定了该处指令在源代码中的位置。

7.方法的传参:

当一个方法被调用的时候,方法的参数被置于最后N个寄存器中;

例如:一个方法有2个参数,5个寄存器(v0~v4),那么,参数将置于最后2个寄存器(v3和v4)。非静态方法中的第一个参数总是调用该方法的对象。

说明:对于静态方法除了没有隐含的this参数外,其他都一样

8.寄存器的命名方式:

V命名

P命名

第一个寄存器就是方法中的第一个参数寄存器。比较:使用P命名是为了防止以后如果在方法中增加寄存器,需要对参数寄存器重新进行编号的缺点。特别说明一下:Long和Double类型是64位的,需要2个寄存器

例如:对于非静态方法LMyObject——>myMethod(IJZ)V,有4个参数:

LMyObject,int,long,bool

需要5个寄存器来存储参数:

P0 this

P1 I (int)

P2,P3 J (long)

P4 Z(bool)

Smali操作指令大全

英文版在线地址:

http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html

中文版的需要翻译。

invoke-direct Invokes a method with parameters without the virtual method resolution.

直接调用使用参数直接调用一个方法(不使用虚拟方法解析)

const/4 vx,lit4、const/16 vx,lit16 Puts the 4 bit constant into vx

将后四位/16位设为lit4/lit16

iput vx,vy, field_id Puts vx into an instance field. The instance is referenced by vy

写入将VX写入一个实例字段,这个实例字段由VY引用。(VY=VX)

new-instance vx,type Instantiates an object type and puts the reference of the newly created instance into vx

新建一个实例实例化一个对象,并将对象的格式设为type(新建一个type实例)

iput-object vx,vy,field_id Puts the object reference in vx into an instance field. The instance is

referenced by vy.

初始化对象将VX引用的对象写入一个实例字段,这个实例字段由VY引用。(用VX中的数据初始化VY)

return-void 返回void

const-string vx,string_id Puts reference to a string constant identified by string_id into vx.

字符常量将String_ID引用的字符常量赋予VX

sget-object vx,field_id Reads the object reference field identified by the field_id into vx.

读取对象将field_ID标示的字段读入VX

invoke-virtual { parameters }, methodtocall Invokes a virtual method with parameters.

调用虚方法带参数调用一个虚方法

DEX文件结构:

https://www.wendangku.net/doc/f76376738.html,/androidsecurity/article/details/8664778

文件头(File Header)

Dex文件头主要包括校验和以及其他结构的偏移地址和长度信息。

字段名称偏移

描述

magic 0x0 8 'Magic'值,即魔数字段,格式如”dex/n035/0”,其中的035表示结构的版本。

checksum 0x8 4 校验码。

signature 0xC 20 SHA-1签名。

file_size 0x20 4 Dex文件的总长度。

header_size 0x24 4 文件头长度,009版本=0x5C,035版本=0x70。

endian_tag 0x28 4 标识字节顺序的常量,根据这个常量可以判断文件是否交换了字节顺序,缺省情况下=0x78563412。

link_size 0x2C 4 连接段的大小,如果为0就表示是静态连接。

link_off 0x30 4 连接段的开始位置,从本文件头开始算起。如果连接段的大小为0,这里也是0。

map_off 0x34 4 map数据基地址。

string_ids_size 0x38 4 字符串列表的字符串个数。

string_ids_off 0x3C 4 字符串列表表基地址。

type_ids_size 0x40 4 类型列表里类型个数。

type_ids_off 0x44 4 类型列表基地址。

proto_ids_size 0x48 4 原型列表里原型个数。

proto_ids_off 0x4C 4 原型列表基地址。

field_ids_size 0x50 4 字段列表里字段个数。

field_ids_off 0x54 4 字段列表基地址。

method_ids_size 0x58 4 方法列表里方法个数。

method_ids_off 0x5C 4 方法列表基地址。

class_defs_size 0x60 4 类定义类表中类的个数。

class_defs_off 0x64 4 类定义列表基地址。

data_size 0x68 4 数据段的大小,必须以4字节对齐。

data_off 0x6C 4 数据段基地址

魔数字段

魔数字段,主要就是Dex文件的标识符,它占用4个字节,在目前的源码里是“dex\n”,它的作用主要是用来标识dex文件的,比如有一个文件也以dex为后缀名,仅此并不会被认为是Davlik虚拟机运行的文件,还要判断这四个字节。另外Davlik虚拟机也有优化的Dex,也是通过个字段来区分的,当它是优化的Dex文件时,它的值就变成”dey\n”了。根据这四个字节,就可以识别不同类型的Dex文件了。

跟在“dex\n”后面的是版本字段,主要用来标识Dex文件的版本。目前支持的版本号为“035\0”,不管是否优化的版本,都是使用这个版本号。

检验码字段

主要用来检查从这个字段开始到文件结尾,这段数据是否完整,有没有人修改过,或者传送过程中是否有出错等等。通常用来检查数据是否完整的算法,有CRC32、有SHA128等,但这里采用并不是这两类,而采用一个比较特别的算法,叫做adler32,这是在开源zlib 里常用的算法,用来检查文件是否完整性。该算法由MarkAdler发明,其可靠程度跟CRC32差不多,不过还是弱一点点,但它有一个很好的优点,就是使用软件来计算检验码时比较CRC32要快很多。可见Android系统,就算法上就已经为移动设备进行优化了。

Java中可使用java.util.zip.Adler32类做校验操作

SHA-1签名字段

dex文件头里,前面已经有了面有一个4字节的检验字段码了,为什么还会有SHA-1签名字段呢?不是重复了吗?可是仔细考虑一下,这样设计自有道理。因为dex文件一般都不是很小,简单的应用程序都有几十K,这么多数据使用一个4字节的检验码,重复的机率还是有的,也就是说当文件里的数据修改了,还是很有可能检验不出来的。这时检验码就失去了作用,需要使用更加强大的检验码,这就是SHA-1。SHA-1校验码有20个字节,比前面的检验码多了16个字节,几乎不会不同的文件计算出来的检验是一样的。设计两个检验码的目的,就是先使用第一个检验码进行快速检查,这样可以先把简单出错的dex文件

丢掉了,接着再使用第二个复杂的检验码进行复杂计算,验证文件是否完整,这样确保执行的文件完整和安全。

SHA(Secure Hash Algorithm, 安全散列算法)是美国国家安全局设计,美国国家标准与技术研究院发布的一系列密码散列函数。SHA-1看起来和MD5算法很像,也许是Ron Rivest在SHA-1的设计中起了一定的作用。SHA-1的内部比MD5更强,其摘要比MD5的16字节长4个字节,这个算法成功经受了密码分析专家的攻击,也因而受到密码学界的广泛推崇。这个算法在目前网络上的签名,BT软件里就有大量使用,比如在BT里要计算是否同一个种子时,就是利用文件的签名来判断的。同一份8G的电影从几千BT用户那里下载,也不会出现错误的数据,导致电影不播放。

map_off字段

这个字段主要保存map开始位置,就是从文件头开始到map数据的长度,通过这个索引就可以找到map数据。map的数据结构如下:

名称大小说明

size 4字

map里项的个数

list 变长每一项定义为12字节,项的个数由上面项大小决定。

map数据排列结构定义如下:

/*

*Direct-mapped "map_list".

*/

typedef struct DexMapList {

u4 size; /* #of entries inlist */

DexMapItem list[1]; /* entries */

}DexMapList;

每一个map项的结构定义如下:

/*

*Direct-mapped "map_item".

*/

typedef struct DexMapItem {

u2 type; /* type code (seekDexType* above) */

u2 unused;

u4 size; /* count of items ofthe indicated type */

u4 offset; /* file offset tothe start of data */

}DexMapItem;

DexMapItem结构定义每一项的数据意义:类型、类型个数、类型开始位置。其中的类型定义如下:

/*map item type codes */

enum{

kDexTypeHeaderItem = 0x0000,

kDexTypeStringIdItem = 0x0001,

kDexTypeTypeIdItem = 0x0002,

kDexTypeProtoIdItem = 0x0003,

kDexTypeFieldIdItem = 0x0004,

kDexTypeMethodIdItem = 0x0005,

kDexTypeClassDefItem = 0x0006,

kDexTypeMapList = 0x1000,

kDexTypeTypeList = 0x1001,

kDexTypeAnnotationSetRefList = 0x1002,

kDexTypeAnnotationSetItem = 0x1003,

kDexTypeClassDataItem = 0x2000,

kDexTypeCodeItem = 0x2001,

kDexTypeStringDataItem = 0x2002,

kDexTypeDebugInfoItem = 0x2003,

kDexTypeAnnotationItem = 0x2004,

kDexTypeEncodedArrayItem = 0x2005,

kDexTypeAnnotationsDirectoryItem = 0x2006,

};

从上面的类型可知,它包括了在dex文件里可能出现的所有类型。可以看出这里的类型与文件头里定义的类型有很多是一样的,这里的类型其实就是文件头里定义的类型。其实这个map的数据,就是头里类型的重复,完全是为了检验作用而存在的。当Android系统加载dex文件时,如果比较文件头类型个数与map里类型不一致时,就会停止使用这个dex文件

string_ids_size/off字段

这两个字段主要用来标识字符串资源。源程序编译后,程序里用到的字符串都保存在这个数据段里,以便解释执行这个dex文件使用。其中包括调用库函数里的类名称描述,用于输出显示的字符串等。

string_ids_size标识了有多少个字符串,string_ids_off标识字符串数据区的开始位置。字符串的存储结构如下:

/*

* Direct-mapped "string_id_item".

*/

typedef struct DexStringId {

u4 stringDataOff; /* file offset to string_data_item */

} DexStringId;

可以看出这个数据区保存的只是字符串表的地址索引。如果要找到字符串的实际数据,还需要通过个地址索引找到文件的相应开始位置,然后才能得到字符串数据。每一个字符串项的索引占用4个字节,因此这个数据区的大小就为4*string_ids_size。实际数据区中的字符串采用UTF8格式保存。

例如,如果dex文件使用16进制显示出来内容如下:

063c 696e 6974 3e00

其实际数据则是”\0”

另外这段数据中不仅包括字符串的字符串的内容和结束标志,在最开头的位置还标明了字符串的长度。上例中第一个字节06就是表示这个字符串有6个字符。

关于字符串的长度有两点需要注意的地方:

1、关于长度的编码格式

dex文件里采用了变长方式表示字符串长度。一个字符串的长度可能是一个字节(小于256)或者4个字节(1G大小以上)。字符串的长度大多数都是小于256个字节,因此需要使用一种编码,既可以表示一个字节的长度,也可以表示4个字节的长度,并且1个字节的长度占绝大多数。能满足这种表示的编码方式有很多,但dex文件里采用的是uleb128方式。leb128编码是一种变长编码,每个字节采用7位来表达原来的数据,最高位用来表示是否有后继字节。

它的编码算法如下:

/*

* Writes a 32-bit value in unsigned ULEB128 format.

* Returns the updated pointer.

*/

DEX_INLINE u1* writeUnsignedLeb128(u1* ptr, u4 data)

{

while (true) {

u1 out = data & 0x7f;

if (out != data) {

*ptr++ = out | 0x80;

data >>= 7;

} else {

*ptr++ = out;

break;

}

}

return ptr;

}

它的解码算法如下:

/*

* Reads an unsigned LEB128 value, updating the given pointer to point

* just past the end of the read value. This function tolerates

* non-zero high-order bits in the fifth encoded byte.

*/

DEX_INLINE int readUnsignedLeb128(const u1** pStream) {

const u1* ptr = *pStream;

int result = *(ptr++);

if (result > 0x7f) {

int cur = *(ptr++);

result = (result & 0x7f) | ((cur & 0x7f) << 7);

if (cur > 0x7f) {

cur = *(ptr++);

result |= (cur & 0x7f) << 14;

if (cur > 0x7f) {

cur = *(ptr++);

result |= (cur & 0x7f) << 21;

if (cur > 0x7f) {

/*

* Note: We don't check to see if cur is out of

* range here, meaning we tolerate garbage in the

* high four-order bits.

*/

cur = *(ptr++);

result |= cur << 28;

}

}

}

}

*pStream = ptr;

return result;

}

根据上面的算法分析上面例子字符串,取得第一个字节是06,最高位为0,因此没有后继字节,那么取出这个字节里7位有效数据,就是6,也就是说这个字符串是6个字节,但不包括结束字符“\0”。

2、关于长度的意义

由于字符串内容采用的是UTF-8格式编码,表示一个字符的字节数是不定的。即有时是一个字节表示一个字符,有时是两个、三个甚至四个字节表示一个字符。而这里的长度代表的并不是整个字符串所占用的字节数,表示这个字符串包含的字符个数。所以在读取时需要注意,尤其是在包含中文字符时,往往会因为读取的长度不正确导致字符串被截断。

人教版八年级下英语期末专项复习语法选择专项训练

语法选择专项训练 NOWadayS many PeOPIe get USed to WaSting things, especially young PeOPIe? In the school, WaSte Can 1 ______ everywhere? SOme StUdents ask for 2 food than they Can eat and OtherS Often forget to turn Off the IightS ___________________ 3 ___ they IeaVe the CIaSSrOOm. WaSte Can bring a IOt Of PrObIemS? SOmeOne SayS China is rich in SOme resources, SUCh as coal, oil, trees and SO OrL SOme PeOPIe even say, “___________ 4 ___ rich OUr COUntry is! n BUt actUalIy We ____ 5 ___ no COaI Or OiI to USe in IOO years if We go On WaSting? We really feel ____ 6 ____ about What We CarI USe in the future. We can, t imagine how We Can go On IiVing ___________ 7 ___ these resources? Think about it 8 ___________ ?I think We ShOUld Say U no M to the StUdentS WhO WaSte things every day. In OUr daily life, We CalI do things ____ 9 _____ W aSte from happening? FOr example, We ShOUld turn Off taps after USing it. Don' t throw the USed PaPer because We Can recycle it. Let, S Start OUt SmalI from now OrL Littie by little, everything WilI be Changed ? WaSte Carl be StOPPed One day if We do _______________ 10 ____ best.The nature WilI be more harmonious and OUr COUntry WilI

《赖世雄美语音标》学习感悟

《赖世雄美语音标》学习感悟 《赖世雄美语音标》学习感悟 经过两个月的认真学习,很快乐终于学完《赖世雄美语音标》了,这是我第一本完整从头学到最后的英语教材,期间反复听赖教师的讲解,反复跟读,从一开始简单的句子都无法读顺,到后来越读越顺,单词、句子也都反复听写,从一开始老听错,到后来越来越分辩得清不同的读音,感觉自己的英语学习总算走上了正轨,对以后的英语学习也更有信心了。 我和大多数中国人一样,在学校开始学习英语,自认对外语学习的悟性不高,所以只能跟着书本和跟着教师学,假如书本上没有的,教师没讲解到的,自己是悟不出来的。那时学音标,教师只是匆匆的把每个音标的发音教一次就算完成了,接下去就是学课文了,学课文也就是跟着课本学单词、学语法、读课文、背课文这样一步一步学,最记得教师总是提醒我们不要把单词最后的辅音吃掉,要发清楚,至于s后面的p、k、t要发成b、g、d更是没说清楚,还有懒惰式英语的模糊发音,非重读的an、of、can、before等单词的发音,以及一些音标标注和外国人实际发音的差异等等都没有教,但赖教师的教材都做了很详细的讲解,特别针对中国人经常搞错的元音发音,如U和u的发音,i:和I的发音,还有辅音在字尾的发音,如l发"欧"的音,p发"普"的单等等,都做了非常详细和耐心的说明,并在整个学习音标的过程中不断反复提醒,让学习的人能把这些重点、难点牢牢的掌

握,自然而然的融会贯穿到日常的发音中去。学了赖教师的这套美语音标教材,才知道自己原来的很多发音都是错了,也明白了为什么自己学了这么多年英语,但实际能听懂的单词怎么这么少,现在才知道原来我学的跟美国人实际的发音有这么多的不同,虽然只是学了两个月的音标,但感觉在实际中听到的单词比原来多了,也因此对英语学习更有兴趣和更有信心了。 我对赖教师这套音标教材的最深领会就是赖教师太了解中国人在学习英语过程中碰到的难点和痛点了,因为他也是被那些自己都没有跟外国人交流过的所谓英语教师教过的,这些教师不知道很多单词外国人其实不是按我们的英语课本和字典发音的,完全照本宣科的对着那些中国人自己编的英语教材来教,教出来的学生假如悟性不高,又没有什么时机和外国人交流的话,基本上最利害的也就只能学个哑巴英语,看资料、写篇文章还将就,听和说就完全不行了。而一些悟性高,特别是有时机和外国人交流的学生,很快就能发现这些问习题,并进行调整。为什么大家一直都很认同学习英语要有英语的环境,最好能出国,这样对英语的听和说都会有莫大的帮助,退而求次则参加有外教的培训班,实际上我现在才明白这真是无奈之举,只是我们学校的英语环境出了问习题,所教的英语发音与实际外国人的发音有这么大的差异,才造成了中国的英语学习者花费了这么多年的时间学习英语却连简单的对话都听不明白,自己说的更是让人不知所云,这不能不说是中国式英语教育的悲哀。 赖教师的这套教材正如他在序中提到的,整个内容是他个人几十

学习英语口语培训的两个关键语法和语感

学习英语口语培训的两个关键:语法和语感首先,作为一门语言,英语有它自己独特的语法,所以如果想要把英语掌握得更加到位,那我们就必须要学好英语语法,就像是跑步之前先学走路一样,只有了解了本质的意义,才能够学得顿悟。语法是语言的精髓,当我们学会了一种语法知识,我们就会了一类语法现象,起到了举一反三的效果。这样在我们日后的英语口语培训中,随着阅读量的增加,语法知识的增多,我们对英语句子也会越来越熟悉。但是语法的掌握不是那么简单,因为语法太多、太繁琐,所以很多时候我们都没有耐心去记这些东西,或者说是很容易忘记。但是作为英语口语培训最重要的精髓,又是我们所必须掌握的。 那么如何进行语法的学习呢,给大家几点建议:一定要进行大量的阅读;一定要进行总结;一定要应用。阅读是学习语法必须的,只有大量的阅读,您才能找出那些语法知识点,才能了解这类语法是怎样应用到文章中的。而总结呢,则是英语口语培训学习的又一阶段,经过总结之后,那些繁琐的语法会变成一条条简单的规则,利于您的学习和记忆。经过总结之后,一些重复或者相似的语法可以去掉,从而减少我们的记忆量。最后就是我们的写作积累了,只有把这些知识运用到自己的语言中,才能成为自己的财富。

再者,英语口语培训是需要有语感的,因为它需要您用嘴讲出来。语感是一个很奇怪的东西,熟悉之后,您可以很简单地说出地道的英语。那么语感该怎么培养呢:首先我们要养成大声阅读的习惯,然后呢要注意平常和大家用英语交流,当然我们也要关注一下国外的社会情形,了解国外文化,利于我们英语语感的培养。 给自己制定一个英语口语培训计划,每天读点文章,写点总结和文章,再听一点英语听力,经过日积月累之后,相信您的英语语感和语法会有惊人的进步。

cobol基本语法教学内容

c o b o l基本语法

基本語法 一、COBOL基本語法 一、cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*”注释符(注释当前行的代码) b “-“字符串连接符 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 二、cobol的语法结构 (几大部分) 1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明。 2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。 a.配置节(CONFIGURATION SECTION) ①.指定源计算机(SOURCE-COMPUTE). ②.目标计算机(OBJECT-COMPUTE). b. 输入输出节(INPUT-OUTPUT SECTION). 文件的物理路径的定义。 方法二:(过程部中动态指定文件) SELECT FILE-LOG ASSIGN TO SELECT-FILE ORGANIZATION IS LINE SEQUENTIAL. 在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。 3、数据部(DATA DIVISION)。 程序中的变量都在数据部中定义,Cobol中没有全局变量和局部之分。(变量的类型结构参照5.变量类型) a. 文件节(FILE SECTION) 给环境部定义的文件指定一个RECORD变量,读写文件用: FD FILE-LOG. 01 RECORD-LOG PIC X(2000). b. 工作存储节 定义程序中用到的临时变量。 a) COBOL变量定义需要加层号(表示层次关系), ·层号从01开始 如: 01 I PIC X(10). ·组合项 如: 01 WORK-AREA. 05 NUM-1 PIC 9(09).

非英语专业学生学习英语的具体方法

非英语专业学生学习英语的具体方法 摘要:到了大学学习英语就不能像高中一样以追求分数为主了,应转向主要以 提高听说的能力,即与人交流的目的为主,但是仍旧要辅以一定的阅读,听、说、读、写要全面同时提高,相互促进。非专业学生学习英语,要做好花大量的时间和精力的准备,需要把零散的时间集中起来,在学习的时候要高度的专注和投入。 关键词:听,说,读,写,专注,零散时间 Abstract:When we enter university,the aim to learn English should mainly change into improving the ability to hear and speak which is communicating with people instead of pursuing the score just like in high school, but we still need to supplement a certain amount of reading,improve listening, speaking, reading and writing skills comprehensively at the same time. As a Non-professional student ,we should be ready to spend a lot of time and energy on learning English, make full use of the fragmentary time , and study English with a high degree of concentration and devotion. Key words:listening speaking reading writing concentration fragmentary time 引言 由于时间不够,非英语专业学生学习英语,是一定要追求效率的,这就涉及到诸多的态度和方法问题了。笔者以自身经历总结出一些方法,以供参考。 1.态度 我认为学习英语首先是要热爱它,对这门语言充满兴趣,这样学起来要轻松

学好英语的语法和语感解读

学好英语的语法和语感解读 语法现象虽千变万化,但语法规律至多就是一本书。所以当我们做题时,遇到不懂的 语法现象时,不应该对自己说,“我记住这种现象,下次再遇到我就知道怎么做了” , 而应积极地返回语法书中去寻找答案。这样做的过程实际上是减少工作量,因为语法现象 繁复多变,我们肯定是记不完的,而语法书虽厚,毕竟其中的知识是有限的。 另外还有一个重要的原因,语法知识是系统的知识,系统化对于记忆的作用是令其效 率成倍增长的。 可是许多人说,我们学自己的母语即汉语时,也没注意过什么语法问题啊,不也说得 很好吗?这确实是事实,但别忘了,我们有语言环境。从婴儿起父母便在我们耳边喃喃话语,在长大的过程中,我们的生活学习无不用到汉语,甚至吃喝拉撒睡也要用汉语来表达。在这种情况下,想不学会都难。没考虑语法却仍说得这么流利,这显然是高度熟练的结果。 那么我们学习英语有这样的环境吗?可以说绝大部分人没有,所以我们应该考虑使用 一些能够快速学习学好的手段,被系统总结的语法就是这样一种手段。肯定很多人又问了,我们从初中刚学英语时就开始接触语法,可我们的英语水平为什么进展却是如此缓慢。这 有两个原因,我先谈其中的一个,另一个过一会再谈。其中一个原因就是语法的学习并未 系统化,让我们来回忆一下英语课堂的情景,每堂课老师都要讲一些语法,学生记下了, 下一堂课又讲了若干语法,学生又抄下了,虽说最后把该讲的语法都讲完了,但却未将这 些语法知识系统化。这样的学习就好象黑瞎子掰苞米,掰一棒、撇一棒,到最后夹在胳膊 下还只是一棒,没有系统化的学习就象这种情况。因为没有系统化,所以未能分门别类, 所以未能加强彼此之间的联系,这当然会使语法的学习呈现出极低的效率。 这是英语水平进展缓慢的一个原因。 另外一个原因是我们没有注意培养语感,或者说对于阅读注重得太多,而对于开口说话、与人交流及动笔写作这方面做得太少。前面已提到了我们在学习母语时,不清楚语法 即能开口说话以及领会对方意思,这就是语感在起作用。有了语感,反应会非常迅捷。而 没有语感,即使语法很熟练,也需一定的反应时间。我们可以拿外国人学汉语来作例子, 比如说“这件衣服我已穿了两年”,这句话非常简单,我们一看就懂。可对于一个没有汉语 语感的外国人,他得考虑这句话的执行者是谁,动作施予的对象是什么,是主动态还是被 动态,动作是瞬间发生的还是持续了一段时间,经过了如此这般的考虑后,他才会领会句 子的意思。 我们学习英语也是这种情况,为了读懂句子必须要先进行句子成分的划分,划分好之 后还要考虑某些一词多意的单词在本句中是什么意思。显然,读懂一个复杂长句就要花费

Beyond Compare常遇到的两个问题

Beyond Compare常遇到的两个问题 Beyond Compare软件主要的功能是比较文件,但是在使用过程中,我们会遇到一些问题,下面就拿两个常见的问题来给大家介绍介绍。 一、Beyond Compare如何生成补丁文件 1、什么是补丁? 补丁即Unix,计算机工具补丁是一个Unix程序,更新文本文件。根据指令包含在一个单独的文件,称为补丁文件。补丁文件是一个文本文件,包含不同的列表并通过运行带有原始的和更新的文件作为参数相关的diff程序生成的文本文件。更新补丁的文件通常被称为应用补丁或简单地打补丁文件。 2、Beyond Compare如何生成补丁文件? Beyond Compare允许您生成内容差异是一个unix形式补丁文件。一旦你有了一个补丁文件,您可以分发和使用Beyond Compare或补丁实用程序更新与修改原始文件。 步骤一:打开Beyond Compare软件,选择文本比较会话操作,单击“打开文件”按钮,选择需要比较的文本文件。 Beyond Compare文本比较会话操作界面图例

步骤二:单击工具栏“会话”按钮,在菜单中选择“文本比较报告”选项卡,打开文本比较报告界面。在报告布局列表中,选择补丁;补丁样式,选择正常对比;输出选项,选择纯文本;单击另存为,选择存储位置即可生成文件。 Beyond Compare文本比较会话设置—文本比较报告界面图例 3、如何应用补丁? 方法一:您可以使用一个补丁应用更改原始文件实用程序,补丁--原始文件--补丁文件。 方法二:使用Beyond Compare 4查看以及应用补丁。在打开的文本比较会话界面,单击“工具”按钮,选择查看补丁并选择一个.diff或. patch补丁文件。单击“文件”按钮,应用补丁并选择原始文件。

赖世雄英语语法1-30

第一课:主语(名词、代词) She is my mother. They are beautiful. 1、动名词(作主语):做过的、有经验、已经事实 动词ing Studing english it is fine. 2、未作的事情、目的、梦想、计划、理想用不定式(作主语) To 动词原形 To buy sth is one of plans. To see him is my purpose. To study abroad is my dream. 3、(不定式)主语太长,用it代替,不定式短语放在后面(动名词改成to不定式) It is my plan to study abroad with my friend jone. 4、句子作主语要变成名词从句----前面用that That she studys hard is true. T hat he doesn't agree with me makes me angry. 5、句子长时(作主语)用it代替 It makes me angry that he doesn’t agree with me. 名词从句有三种:戴慧怡:that引导;whether(yes、no回答的,问句变成的句子做主语)引导;疑问词开头(不能用yes、no回答的疑问句---特殊问句) That she studys hard is true. Is she beautiful ? Whether she is(不能倒装) beautiful remains to be seen. Where will he go? Where he will go(不能倒装) is still a question. To bo a teacher is my dream. Mingic daici budingshi juzi wenju zuoshuyi 第三课 1、及物动词两种语态:主动或被动 我。。。他I love her. 主动 他被我。。。her is loved by me. 被动(be+过去分词) (1)完全及物动词:动词加宾语(名词、代词)后意思完整 I hate him. (2)不完全及物动词:动词加宾语后意思不完整 叫、让、强迫。。。sb do sth Make: 完全及物动词:I make a chiar.制作 不完全及物动词(+补语):I make him happy.使…… 2、完全不及物动词(不能被动语态):两种用法 (1)主语+完全不及物动词 Dance:I dance. (2)主语+be+完全不及物动词ing(现在分词):(当时正在、现在正在)进行时 I am dancing.

怎样讲好英语语法

怎样讲好英语语法 新课程标准要求,通过创设良好的语言环境和提供大量语言实践的机会,使学生通过体验,感知,实践,参与和交流等方式学习语言,形成语感。让学生在老师的引导下,通过观察,发现和归纳等方式掌握语言的规律,形成有效的学习策略,发展交流与合作的能力。例如:英语中语法项目是频度副词的用法。先与学生谈论本单元的话题日常饮食,通过这种方式呈现频度副词。Do you have milk every day? Oh, I see. You always have milk for breakfast. What about you? Oh, you never have milk. How often do you have milk? Once a week? You seldom have milk.一边与学生交流,一边板书含有频度副词的句子,并用彩色粉笔将频度副词标注出来。 新课程标准提倡在课堂教学中采用实践性强,具有明确目标的任务型教学方式,使学生带着明确的任务目标,积极主动地学习。在完成任务的过程中,学生通过实践,思考,调查,讨论,交流和合作等方式学习和使用语言。任务型教学在发展学生的语言能力的同时,强化其学习动机,提高其学习兴趣,培养其合作精神,使其形成学习策略,并增进其对英语文化的理解。采用任务式进行语法教学,一定要在学生了解相关的语法项目的基本结构及其用的基本功能后进行。教师设计的任务一定要贴近学生的生活,将抽象的语法知识融入真实的生活情景之中。采用任务型教学途径,可以改变目前语法教学中过于重视语言形式而忽视语言实际运用能力的弊端。 三、通过做游戏学习语法 初中生由于年龄的特点,都喜欢做游戏。在游戏中运用所学语法知识,能提高学生的学习兴趣,调动学生的积极性。例如,在学习现在进行时的时候,让五位学生上讲台前,给第一个同学一张小纸条,纸条上写着“eat chicken”,他做动作,其余同学模仿。全班同学猜动作。可以运用句型What are you doing? What is he/she doing? Are you doing…..?Is he/she doing…..?学生们踊跃发言。Are you doing ...? 想要结束游戏时,可用句型What are we doing? We are playing a game. We are having an English lesson. 四、语法教学应与听说读写相结合 新教材的编写以话题为主线,当某个话题需要运用某些语法项目时,对话或课文中就会出现这些语法项目。在平时的教学中应贯穿语法教学,作适当的讲解和操练都是必要的。学习语法能帮助学生更好的理解课文,同时在阅读课文时,也可以巩固所学的语法知识。这样,学生既掌握了语法知识,又提高了口语表达能力和阅读理解能力。 五、把握好语法教学的深度和广度 教师一定要把握好本课的重点和难点,以及语法教学的深度和广度,如不是本单元需要掌握的内容,不可延伸过多,讲解过深,点到为止。否则,学生会越听越糊涂,根本接受不了,而且浪费时间,老师该讲的没来得及讲,学生该掌握的没有掌握。教师可以通过集体备课,来讨论确定,统一语法教学的广度,深度和进度。

浅谈COBOL开发

浅谈COBOL开发 近几年,由于IBM和HITACHI等大型机力推COBOL,使COBOL在沉睡了几年以后又重新火了起来。因为本人从毕业以来,一直在做COBOL的项目,今天斗胆把毕业以来的一些经验写出来,不管对还是错拿出来大家一起讨论讨论。 COBOL语言常用的开发方式有以下几种: 1. PC机开发。这种开发方式比较灵活,可以与当今比较流行的语言进行对接。把数据库、及开发环境都可以集成到我们的PC机上。程序执行的LOG和文件都在PC机上指定目录。当今比较流行的语言如.net、 VB、 C++等编译生成的LIB文件,COBOL都可以直接调用。这种开发方式所使用的开发工具中首推日立推出的COBOL2002,还有一个比较低的版本COBOL85,COBOL2002的优势在于DB连接方面。当然由于COBOL85版本太老,本人无缘使用,但是曾经听过一位前辈说COBOL85不能进行DB连接,也就是说COBOL85的数据存储只能以文件的形式存储。COBOL2002可以设定断点(VB、.NET程序员应该比较熟悉),程序执行过程中可以单步调试,察看变量值。COBOL2002还可以记录测试路径的覆盖率,一些异常处理可以利用设定断点的方式跑到,所以这种开发方式可以出现路径覆盖率为100%的情况。但是这种开发形式的语法要求比较低,比如说代码中出现全角空格就能顺利通过编译,而相同的代码在大机上编译就会出错。 2.B/S形式大机开发。程序员在PC机上开发,代码编写完成以后,通过FTP上传工具,把代码上传到大机端。利用远程登录telnet登录大机,在命令行输入编译代码。本身程序员在编写代码过程中完全占用PC机资源,不占用大机内存资源。当程序被传到大机上以后,才占用大机资源。由于大机是多用户多线程作业,所以即使代码死循环,大机也不会停掉。而是在这个线程执行一段时间以后,压到堆栈中,执行其他线程。这种大机典型的是H9000(HITACHI9000,个别人可能误以为是HP的产品)。大机上常常把目录固定,主处理和子程序往往在不同的目录下存放。程序执行过程中无法设定断点。如果想要查看程序执行过程中的变量,只能在代码中追加DISPLAY语句,在LOG中把变量值打出来。一般来说,大机的语法要求高一些,代码里除了X型变量中和注释出现全角空格外,其他地方出现空格是绝对不能编译通过的。 3.HOST端大机开发。程序员通过个人计算机和网络和大机相连,在编写代码的过程中,占用大机资源。就是说如果你PC删除一行代码,对应大机上也要删除一行代码。编写的代码无法在PC机上进行编译,代码需要使用大机的操作系统命令进行编译和执行。代码编写操作远远没有ULTRAEDIT方便,删除、拷贝都需要系统命令。而且要进行用户登录和退出。开发担当常常用一个文本记下所有常用命令,以便开发过程使用。这种开发的典型就是IBM 的S/390

APK说明

【Android】【apk反编译基础】 大家都应该知道APK文件其实就是一个MIME为ZIP的压缩包,我们修改ZIP后缀名方式可以看到内部的文件结构,例如修改后缀后 用RAR打开鳄鱼小顽皮APK能看到的是(Google Play下载的完整版版本): Where's My Water.zip\ asset\ <资源目录1:asset和res都是资源目录但有所区别,见下面说明> lib\ |---armeabi\ |--- |---armeabi-v7a\ META-INF\ <存放工程一些属性文件,例如Manifest.MF> res\ <资源目录2:asset和res都是资源目录但有所区别,见下面说明> |---drawable\ |---<图片和对应的xml资源> |---layout\ |---<定义布局的xml资源> |---... AndroidManifest.xml classes.dex resources.arsc <对res目录下的资源的一个索引文件,保存了原工程中strings.xml等文件内容> asset和res资源目录的不同在于: 1. res目录下的资源文件在编译时会自动生成索引文件(R.java),在Java代码中用R.xxx.yyy来引用;而asset目录下的资源 文件不需要生成索引,在Java代码中需要用AssetManager来访问; 2. 一般来说,除了音频和视频资源(需要放在raw或asset下),使用Java开发的Android 工程使用到的资源文件都会放在res下 ;使用C++游戏引擎(或使用Lua binding等)的资源文件均需要放在asset下。 因为Where's My Water是使用迪斯尼公司自家的DMO游戏引擎开发,所以游戏中用到的所有资源文件都存放在asset下,除了应 用图标这些资源仍需要放在res下。 Dalvik字节码Dalvik是google专门为Android操作系统设计的一个虚拟机,经过深度的优化。虽然Android上的程序是使用java来开发

赖世雄-英语语法

第1章句子的构成 最后,来翻译英文观止里面的句子。 弄完了以后,打印出来,装订好。 语法的目标:看懂句子,分析句子的结构,这是学习语法的终极目标。 修饰的时候不一定是连接在一起的, 要分清格局, 用大块结构的形式来分析. 动词块, 不定式块…. 1.句子由主语(subject)+谓语(verb)构成; 2.主语省略时,构成祈使句。 Work hard! Be quite! Don’t be silly. 1.1 可充当主语的词类 1.名词 2.代词 3.动名词,不定式短语 Seeing him makes me angry. 其实应该是动名词短语做主语或不定式短语作主语 To see him makes me angry. 但是,这种动名词或不定式短语做主语时,一般用形式主语。 It makes me angry seeing him.这里不是修饰angry。 It makes me angry to see him. 分析句子时,先看一看是不是形式主语。 4.名词从句做主语 That he doesn’t work hard makes me angry. 三种形式:that从句,whether从句,疑问从句(when what how where why) Where he lives is still a doubt. 一、名词从句: 名词从句作动词宾语 I know that he will go abroad in the nearest future(名词从句作动词宾语) I don’t know how he’ll handle it.

名词从句作介词的宾语 I am worried about whether he can do it I am sure of how he’ll cope with the problem I am sure of the fact that the team has won the game. I am worried about the fact that he can do it. 这里因为介词+ that从句,所以,需要在介词后加the fact ,that 从句变为the fact的同位语,都是介词的宾语。 I am worried about his playing around all day. I am worried about his not studying. 这里,介词后边的还是宾语,其实是由that 引导的。但是介词加that从句,需要变换,所以变成这样了。 原句是:that he plays around all day.->his playing around all day. that he not study.-> his not studying. 变化的过程中,去掉that,助动词,变所有格,动词变成动名词。 that he doesn’t study-> his not studying. That the team will win the game the team’s winning the game. be + adj. + that 从句 I am worried that he plays around all day.(状语从句,修饰形容词) I am sure that the team has won the game(状语从句). 有时,介词后也可以直接加that从句。 是固定的。 In that = because Except that He is great in that he can speak five different languages. 二、名词短语做主语 名词短语:疑问词+不定式短语 Where to live Whether to try again. When to talk to hime 三、表距离的地点副词短语做主语 From ...to … It is about 160 kilometers from Beijing to Xiamen. 1.2 动词的种类及其用法 完全(complete) 及物(intransitive) 两种修饰,出来4个形态,还有一个是授予动词(Dative),所以总共有5种动词。 A transitive verb has a direct object. (动词) 及物的; 传递;及物动词 1.完全不及物动词

考研英语的语法与语感备考方案

考研英语的语法与语感备考方案考研英语的语法与语感备考方案 另外还有一个重要的原因,语法知识是系统的知识,系统化对于记忆的作用是令其效率成倍增长的。 这是英语水平进展缓慢的一个原因。 另外一个原因是我们没有注意培养语感,或者说对于阅读注重得太多,而对于开口说话、与人交流及动笔写作这方面做得太少。前面已提到了我们在学习母语时,不清楚语法即能开口说话以及领会对方意思,这就是语感在起作用。有了语感,反应会非常迅捷。而没有语感,即使语法很熟练,也需一定的反应时间。我们可以拿外国人学汉语来作例子,比如说“这件衣服我已穿了两年”,这句话非常简单,我们一看就懂。可对于一个没有汉语语感的外国人,他得考虑这句话的执行者是谁,动作施予的对象是什么,是主动态还是被动态,动作是瞬间发生的还是持续了一段时间,经过了如此这般的考虑后,他才会领会句子的意思。我们猜您可能喜欢以下文章:南开大学与天津大学公办高考咨询大会高考志愿首次来晋招生年湖南高考志愿新章程年高考弃高考者达21.1%难到是“洋高考”更年甘肃省高考本科一批:7月12日开始录取年吉林省高考各批次录取时间湖北省高考语文满分作文:交流的无奈年湖北省高考考生收到录取通知书后的注意事项广东:年艺术高考录取分数线详情年海南高考志愿填报:本科第一批和本科提前批艺英语:考研英语的语法与语感备考指南 我们学习英语也是这种情况,为了读懂句子必须要先进行句子成分的划分,划分好之后还要考虑某些一词多意的单词在本句中是什么意思。显然,读懂一个复杂长句就要花费我们不少的时间。由此看来,英语考试经常出现时间不够用的现象也就不足为怪了。但我们还不能不去划分,如果不划分句子成分干脆什么也看不懂。

安卓手机厨房Kitchen说明

DSIXDA’s ROM Kitchen for HTC Android Devices DSIXDA的HTC安卓ROM(固件)定制工具2011.2.23 文章作者:Will Verduzco 是否你曾经想制做自己风格的ROM,但是又没有足够的编程经验去真正实现它?非常幸运的是,XDA高级版主Dsixda已经为HTC安卓设备制作了一个非常好的烹制工具,这个工具应该能够实现你所有ROM定制的需求。这个工具只兼容Linux和Mac OS X,所以如果你的电脑正在运行windows系统,你将需要使用Cygwin或是一个虚拟机,比如VirtualBox。想得到一些具体细节和其它的解决方式请参考Kitchen FAQ。 根据开发者提供的信息,这个工具被定位于以下目标人群: ************** ?哪些想要打造自己品牌的新定制Roms且又想要找一个容易的地方开始的人 ?哪些仅仅想将一个发行版的Rom或是其它人制做的ROM修改为自己喜欢的风格的人 ?哪些为了制作或是提取ROM而被这些脚本语言和复杂的命令行所困惑的人 到目前为止,以下设备已经被支持: ?Buzz / Wildfire ?Desire ?Desire HD ?Desire Z ?Dream / G1 ?Droid Eris ?Evo 4G ?Evo Shift 4G ?HD2 – using NAND ROM

?Hero / G2 Touch ?Incredible ?Legend ?Magic / myTouch 3G ?myTouch 4G ?Nexus One ?Tattoo / Click ?所有的已经获得完全root权限的其它一些HTC的Android设备(没有经过测试)?所有的能运行Android系统的其它一些H TC Windows Mobile设备(没有经过测试) 根据其它论坛的会员反馈,一些非HTC设备也被支持: ?Huawei U8100/U8110/U8120/U8150 ?LG Ally ?LG Shine Plus ?LG GT540 Optimus ?Motorola CLIQ ?Samsung Galaxy S-你必需用RMGeren’s SGS版本的kitchen工具 ?Sony Xperia X10 / X10 Mini / X10 Mini Pro –没有boot.img ?T-Mobile Pulse 软件的具体说明和下载见下面回贴!

cobol基本语法

基本語法 一、COBOL基本語法 一、cobol的书写格式(每行) 1、前6列为序号区(一般不编辑) 2、第7列为标示列,仅可以写如下几个标示符。 a. “*”注释符(注释当前行的代码) b “-“字符串连接符 3、第8列---11列为A区,包括以下内容。 a 部、节名。 b 层号01 4、第12列---72列为B区,过程部的程序必须写在B区中。 5、第72以后部分不能编辑。 二、cobol的语法结构 (几大部分) 1、标示部(IDENTIFICATION DIVISION):提供程序的一般性文档说明。 2、环境部(ENVIRONMENT DIVISION): 提供程序外部有关的项目。 a.配置节(CONFIGURATION SECTION) ①.指定源计算机(SOURCE-COMPUTE). ②.目标计算机(OBJECT-COMPUTE). b. 输入输出节(INPUT-OUTPUT SECTION). 文件的物理路径的定义。 方法二:(过程部中动态指定文件) SELECT FILE-LOG ASSIGN TO SELECT-FILE ORGANIZATION IS LINE SEQUENTIAL. 在数据部定义字符串变量SELECT-FILE,在文件FILE-LOG打开前动态指定文件路径。 3、数据部(DATA DIVISION)。 程序中的变量都在数据部中定义,Cobol中没有全局变量和局部之分。(变量的类型结构参照5.变量类型) a. 文件节(FILE SECTION) 给环境部定义的文件指定一个RECORD变量,读写文件用: FD FILE-LOG. 01 RECORD-LOG PIC X(2000). b. 工作存储节 定义程序中用到的临时变量。 a) COBOL变量定义需要加层号(表示层次关系), ·层号从01开始 如: 01 I PIC X(10). ·组合项 如: 01 WORK-AREA.

赖世雄语法 第七章 虚拟语气

第七章虚拟语气(subjunctive mood) 概说 1 虚拟语气是一种表示虚拟状态的句型,由if引导的副词从句与主句构成。依时态的不同而形成下列四种基本句型。 A:纯条件的虚拟语气------用现在时 如果他在这儿,我会揍他。 B:与现在事实相反的虚拟语气----用过去时 如果他现在在这儿,我会揍他。---但他现在不在这儿。 C:与过去事实相反的虚拟语气------用过去完成时 如果他当时在这儿,我会揍他。---但他当时不在这儿。 D:与将来状况相反的虚拟语气-----if从句要用助动词should,主句则用过去时或现在时助动词。 万一他在这儿,我会揍他。 第一节纯条件虚拟语气 一、基本句型结构 使用纯条件虚拟语气时,if从句的动词用现在时,主句则用现在时助动词。 1.如果他在这儿,我会揍他。 2.谁要犯了这样的错误,就要受处罚。 3.如果他来了,你就该告诉他事情的真相。 二、用法及注意事项 1.一旦我有钱,我会买辆车。 2.他做完事,就可以来了。 3.如果消息属实,他很可能仍安然无恙。 4.如果他能来的话,我会很高兴。 5.如果他愿意做的话,我会很高兴。 6.如果他非这样做的不可的话,他得小心做。 7.如果我有时间,我应当去办这件事。 8.如果我有时间,我可以做这件事。 9.如果有人犯错误就要被处罚。 10.如果他搞错的话,我会处罚他。

第二节与现在事实相反的虚拟语气 一、基本句型结构 使用与现在事实相反的虚拟语气时,if从句的动词用过去时,主句则用过去时助动词。 1.如果我很有钱,我会帮助你。 2.如果他住在我住的镇上,我就能每天见到他。 二、用法及注意事项 1.如果我很有钱,我就会帮助你。---因为我不是很有钱,所以无法帮助 你。 2.如果我们帮他们的话,天黑前他们就可以做完工作。----其实,我们 不可能帮助他们,所以天黑前他们也做不完工作。 3.如果我是你,我不会做这事。 4.如果你为了我这样做,我会很高兴。 5.如果我能飞,我会飞向你。如果你有钱,你应该帮助穷人。 第三节与过去事实相反的虚拟语气 一、基本句型结构 使用与过去事实相反的虚拟语气时,if从句的动词用过去完成时,主句则用助动词的过去时。再加have+过去分词。 1.要是我在三点前到,就能见到他了。 2.要是他当时听见你的劝告,他可能会快乐。 二、用法及注意事项 1.如果我3点前到,我就可以见到他。 2.因为我没有在3点前到,所以没见到他。 3.如果他当时接受你的建议,他可能会快乐些。 4.如果当时你居于我的处境,你可能会这件事。 5.因为当时你没有居于我的处境,所以你没有做这件事。 6.如果他现在有钱,他可能会买辆汽车。 7.如果他当时有钱的话,他可能已经买辆汽车了。 第四节与将来状况相反的虚拟语气 一、基本句型结构及要点 使用本虚拟语气时,if从句一定要加助动词should。若虚拟的可能性很小,则主语要用过去时助动词(和现在事实相反的虚拟语气相同);但若虚拟的可能性很大,则主句要用现在时助动词(与纯条件虚拟语气相同)。 1 可能性很小 1.万一你生病,会议将延期。----你不太可能生病,会议不太可能延期。 2.万一下雨,我就能留在家里。----不太可能下雨,而我也不太可能留 在家里。

浅谈英语语感的重要性及培养对策

浅谈英语语感的重要性及培养对策 引言 英国人说英语(或法国人说法语,俄罗斯说俄语,希腊人说希腊语,韩国人说韩语……)时,能十分正确而不自觉地运用句子结构、动词时态、一致关系等。倘若你问他,为什么他宁愿用这种特定的形式而不用别的形式,他可能讲不出所以然来。他只知道是凭着自己的语感来的。这是因为他通过经常不断地听到这种形式和持久不怠的实践运用,耳濡目染,获得了一种“语感”。可见,语感的重要性。同样,在日常英语教学中,我们也经常听到很多学生这样的答题解释“凭语感”,语感难以解释,但又价值不菲。培养英语语感对英语教学和英语运用起着重要作用。只有让学生有了使用语言的感觉,我们的教育才能真正做到实效性和素质化教育。 一、英语语感的定义 日常英语教学中,老师不免会经常听到学生解释说“凭语感”。那么,究竟什么是语感?它为什么总能指挥学生向正确的方向前行呢?曾经有位心理学家这样说道:语感是由事物有关的表像、想象、联想、情感等多种心理因素构成的,在刹那间不假思索的情况下感觉语言的一种心理现象。而英语语感,简单地说,就是人们对英语语言的感觉或对英语的敏感度。它包括人们对英语的语音感受、意义感受、语言情感色彩的感受等。它是人们对英语语言的第一感知能力,是人们对英语语法和组织方法的掌握和运用,是经过反复的感性认识上升为理性认识的经验和体会。语感来自于语言实践活动,随着语言实践的积累必然产生,而后它又可以指导语言实践活动,加速学者对语言的理解、掌握和运用能力。 三、英语语感的重要性 人在学习一种语言的过程中,对其拥有了较强的语感,学起来就

会更加轻松、易懂。正如球类运动员要打好球必须熟悉球性,游泳运动员要有良好的水性,音乐家要有良好的乐感,歌唱家要有优美的喉咙一样。同样,要学好英语,就必须具备良好的语感,良好的英语语感对听、说、读、写等基本技能的提升和发展,有着神奇的推动作用。 1.英语语感对听力的影响 在日常英语教学中,我们经常会遇到这样的学生,他们做起英语基础题、语法题、词汇题、翻译题是得心应手,而且对老师课堂上讲的语法知识也掌握的比较准确。可苦恼的人,往往这些学生当在遇有听力题目的考试时总不能得高分,30分的听力题,好的学生还要扣到5—6分。因而,经常有一些成绩好的学生在跟我交谈的时候向我反应他们的困惑,该背的单词他们背了,该记的语法规则他们记了且掌握了,该掌握的句型和结构他们也都理解了,可为什么每次录音机播放听力的时候他们总是紧张、不自信不能捕捉住重要信息呢?而等到下次老师再读一遍的时候,他们就听明白了,而且发现原来大部分单词和句子,都是平时自己能写的,能说的,只是乍一听别人连贯起来读给自己听却一时被蒙住了。或者有的是另一种情况,当学生在做听力的时候,他们往往听到一句英文就立刻在头脑里想方设法把它翻译出来,等他从前一句思维中走出来的时候,下一句就已经播放完了,失去了连贯性,他们就不能听到本章的大意来,没有了前一句的信息,后一句即使是自己所能学过且掌握的内容,在那种情况下他也听不出来了。其实这些情况的发生并不奇怪,我们老师所给的建议最多的就是让他们平时自己多听听,听听英语新闻,听听英语广播节目,听听书本上的听力磁带,听多了自然而然就有了感觉,有了这种感觉我们听起来就顺耳了,而这种感觉就是我们所说的语感。有了较强的语感,他听起来就不会那么吃力,那么紧张了。 2.语感对口语的影响 英语新课程改革一直倡导我们教师在课堂上尽量用英语说,鼓励

相关文档