turbo pascal7.0使用方法
3月16日 14:56 一、FP与TP的本质区别
虽然Free Pascal尽量设计得和Turbo Pascal接近,但是由于以下的两个原因,两者之间还是有一些区别的:
1.Free Pascal是一个32位的编译器,而Turbo Pascal只是16位的编译器;
2.Free Pascal是一个跨平台的编译器,而Turbo Pascal只在windows上使用。
如果你的程序代码是完全遵守ANSI Pascal的,那么你的程序代码从Turbo Pascal移植到Free Pascal上是没有问题的。
二、TP和 FP的功能区别
1.Free Pascal理论上可以使用4GB(2^32byte)的内存,因此实际上几乎可以使用系统中的所有剩余内存(除非赛题中有内存限制),这是因为Free Pascal使用的是32位的编译器。
但是对于Turbo Pascal来说,由于是16位的编译器,因此不能定义大小超过64KB(2^16byte)的数据类型和变量,并且在DOS实模式下可以使用的内存总数只有640KB。
但这并不是说,你可以随意定义很大的数组了,因为光读入200MB的数据就会让你的程序超时了(因为现在的7200转硬盘和133的系统总线速度决定了读取数据的速度也就100MB/秒)。
2.在Free Pascal中,如果用assign给标准输入输出文件变量input和output指定了文件,在程序结束之前一定要用close关闭input和output,否则输出文件可能不能被正确的写入。
这个问题是近几年NOIP竞赛和省队训练、选拔中选手常犯的错误。尤其是程序非正常结束之前(如halt)会忘记。
3.如果用Rewrite打开文件,那么文件就只能被写入了。如果需要读取这个文件,要对文件执行Reset。所以,在Free Pascal中最好不要对一个文件同时进行读写操作。
4.在Free Pascal中,集合中的元素都是4个字节长的。
5.表达式执行的顺序是不确定的。比如对于表达式a:=g(2)+f(3); 不保证g(2)一定在f(3)之前执行。
6.函数和过程在使用时,参数的类型必须和定义时完全一致。原因是在Free Pascal中添加了函数重载功能。
7.PROTECTED,PUBLIC,PUBLISHED,TRY,FINALLY,EXCEPT,RAISE成为了关键字,因此不能作为函数和过程的名字;而FAR,NEAR不再是关键字了,原因是Free Pascal是32位系统,不再需要这些关键字。
三、FP的新增功能
函数可以返回复杂的类型,比如记录和数组。如:
type arrtype=array[1..100] of longint;{必须要先定义数组基类型,否则红色部分不合法}
详细区别可以参见附件文件
附件:FP与TP详细比较整理.doc
请问Free Pascal与Turbo Pascal的区别。它们能通用吗?
turbo pascal:Pascal是一门编程语言,而Turbo Pascal/Free Pascal是Pascal程序的编译系统.。 Pascal只是一门语言,而Turbo Pascal/Free Pascal是编译器,这两个是不能比较的 。 你可以把两个语言放在一起比较,或者两个编译器放在一起比较 。 在中国的信息学奥林匹克竞赛中,过去比较常用的Pascal编程工具是Turbo Pascal。Turbo Pascal是DOS下的一种16位编程工具,在Delphi出现之前,它是世界上最多人使用的Pascal编程工具,拥有编译速度极快的先进编译器和功能强大而又简便易用的集成开发环境(IDE),在微机程序员中广为流行,正是它的出现奠定了Pascal在DOS/Windows平台上不可动摇的根基,现在常见的版本有Turbo Pascal 5.5、Turbo Pascal 6.0和Borland Turbo Pascal with Objects 7.0。Turbo Pascal 6.0与Turbo Pascal 5.5相比,主要是IDE更为强大,而其程序设计功能改变不大,只是增加了一些新的功能,例如可以内嵌asm汇编语句等。而Borland Turbo Pascal with Objects 7.0(简称Borland Pascal 7.0)则有了新的飞跃,首先是IDE进一步加强,提供了程序浏览器,然后是程序设计功能有了很大的提升,新增了一些十分有用的标准子程序,支持比较完善的面向对象程序设计功能,并提供了DOS实模式、DOS保护模式和Windows模式三种程序编译模式,能够编写出可以使用扩充内存(XMS)的保护模式应用程序或者在Windows 3.x下运行的Windows程序,另外还提供了一个对象窗口库(OWL),使用它可以快速的开发出具有一致的视窗界面(DOS或Windows 3.x)的应用程序。Borland Pascal 7.0在1992年推出,是Turbo Pascal系列在DOS下的最后版本。Free Pascal 现在,随着Turbo Pascal逐渐被淘汰,全国信息学奥林匹克竞赛决赛(NOI)和国际信息学奥林匹克竞赛(IOI)已经指定Free Pascal为比赛使用的Pascal编程工具。Free Pascal是由一个国际组织开发的32/64位Pascal编程工具,属于自由软件,可用于各种操作系统。根据编译选项的不同,它可以使用Turbo Pascal兼容语法、Delphi 语法或者其它语法进行编写程序。由于它拥有32/64位的编译器,而且一直在更新发展中,因此它的功能比Borland Pascal更加强大,拥有许多现代程序设计的特征。但它对程序员的吸引力比不上拥有VCL和CLX的Delphi和Kylix。 Free Pascal是一个在多种版本Pascal和Delphi下的产物,目前比较成熟的版本是由FreePascal. org发布的2.2.4版本(最新版本为2.4.4,但在使用的时候,2.4.4经常会莫名其妙的中止编译),由于是Pascal上的改版,在FP里加入了很多以前没有的东西,例如:FillChar系列内存块赋值语句,用Power代替了**(乘方),但是**还是可以使用。 另外FP加强了与内存的互容性,增大对内存的支持,FP里的内存限制是TP和BP里的将近上万倍。 FP还进一步加强了单元支持、面向对象程序设计的支持、显卡(声卡)的支持、图形高级覆盖的支持、Windows\Linux\OS/2\..等众多系统的支持。在FP的较稳定版本中,可以方便的利用Win32编译模式,编译出Windows应用程序,与Delphi的功能相当。同时对动态连接库、控件、数据库、文件、网络、OpenGL的深入支持,使得 FP 在各种 Pascal 编译系统中脱颖而出。 更值得提出的是,FP支持Delphi及C++的部分语言,例如:A+=2这样的C Style语言,在FP里完美支持。 FP中支持单目、双目操作符,即所有版本的Pascal的符号和“@”等特殊符号。 FP 支持运算符重载。 FP现为竞赛推荐工具。 最新发布版本为 2011 年 5月 22 日发布的 2.4.4。 最新 bugfix 版本为 svn repo 里的 2.4.3。
Turbo Pascal V7.0怎么使用
白色的是系统保留字,即系统已经为这些白色的字默认了意思,
你最好不要去把白色的定义为变量:
比如 var while:longint;
begin
readln(while);
writeln(while);
end.
这个程序就会报错。。因为while是系统保留字。。
而黄色的非系统保留字,你可以自己进行定义。。
注意:halt也是黄色的。。不过是有默认意义的。。表示退出
可以用于退出循环。。
pascal 程序
program t1;
var
s:qword;
num,n,ans:longint;
begin
assign(input,'t1.in');
reset(input);
assign(output,'t1.out');
rewrite(output);
readln(n);
num:=1;s:=0;
while s<n do
begin
inc(s,num);
ans:=num;
inc(num,2);
end;
write(ans);
close(input);
close(output);
end.
program t2;
var
a:array [-1..1000] of longint;
i,j,n,m:longint;
begin
assign(input,'t2.in');
reset(input);
assign(output,'t2.out');
rewrite(output);
read(n,m);
for i:=1 to n do a[i]:=i;i:=0;a[0]:=n;
while n0 do
begin
write(a[(i+m) mod n],' ');
i:=(i+m) mod n-1;dec(n);
for j:=i+1 to n do a[j]:=a[j+1];
end;
close(input);
close(output);
end.
program t3;
var
a,b:array [1..226] of integer;
st:string;
i,code,k,n:longint;
procedure sort(left,right:longint);
var
l,r,mid,x:longint;
begin
l:=left;r:=right;mid:=b[(l+r) div 2];
repeat
while b[l]<mid do inc(l);
while b[r]>mid do dec(r);
if l<=r then
begin
x:=b[l];b[l]:=b[r];b[r]:=x;
inc(l);dec(r);
end;
until l>r;
if l<right then sort(l,right);
if r>left then sort(left,r);
end;
function max(x:longint):integer;
var
i,k:longint;
begin
max:=0;
for i:=1 to x do
if (a[x+1]>a[i])and(a[i]>max) then begin max:=a[i];k:=i; end;
if max=0 then max:=a[x+1]
else b[k]:=a[x+1];
end;
begin
assign(input,'t3.in');
reset(input);
assign(output,'t3.out');
rewrite(output);
readln(st);
n:=length(st);
for i:=1 to n do val(st[n-i+1],a[i],code);
for i:=1 to n do
begin
k:=i-1;
b[i]:=max(k);
if b[i]a[i] then break;
end;
if (k+1n)and(a[n]b[n]) then sort(1,k);
inc(k);
for i:=n downto 1 do
if i>k then write(a[i]) else write(b[i]);
close(input);
close(output);
end.
题目输出的样例是对的
如有错误或者不懂的地方,请指教
望采纳
很费脑子的········
pascal早还是c语言早
C语言早
C语言的发展历史
C语言是国际上广泛流行的、很有发展前途的计算机高级语言。它适合作为系统描述语言,即可用来编写系统软件,也可用来编写应用软件。
早期的操作系统等系统软件主要是用汇编语言编写的(包括 UNIX操作系统在内)。由于汇编语言依赖于计算机硬件,程序的可读性和可移植性都比较差。为了提高可读性和可移植性,最好改用高级语言,但一般的高级语言难以实现汇编语言的某些功能(汇编语言可以直接对硬件进行操作),例如:对内存地址的操作、位操作等)。人们设想能否找到一种既具有一般高级语言特性,又具有低级语言特性的语言,集它们的优点于一身。于是,C语言就在这种情况下应运而生了。
C语言是在B语言的基础上发展起来的,它的根源可以追溯到ALGOL 60。 1960年出现的ALGOL 60是一种面向问题的高级语言,它离硬件比较远,不宜用来编写系统程序。1963年英国的剑桥大学推出了CPL(CombinedProgram- ming Language)语言。CPL语言在ALGOL 60的基础上接近了硬件一些,但规模比较大,难以实现。1967年英国剑桥大学的Matin Richards对 CPL语言作了简化,推出了BCPL(Basic Combined Programming Language)语言。1970年美国贝尔实验室的 Ken Thompson以 BCPL语言为基础,又作了进一步简化,设计出了很简单的而且很接近硬件的 B语言( 取 BCPL的第一个字母),并用 B语言写第一个UNIX操作系统,在PDP-7上实现。 1971年在PDP-11/20上实现了B语言,并写了UNIX操作系统。但B语言过于简单,功能有限。1972年至 1973年间,贝尔实验室的 D.M.Ritchie在B语言的基础上设计出了C语言(取 BCPL的第二个字母)。C语言既保持了BCPL和B语言的优点(精练、接近硬件),又克服了它们的缺点(过于简单、数据无类型等)。 最初的C语言只是为描述和实现UNIX操作系统提供一种工作语言而设计的。1973年,K.Thom- pson和D.M.ritchie两人合作把UNIX的90%以上用 C改写(UNIX第5版。原来的 UNIX操作系统是1969年由美国的贝尔实验室的 K.Thompson和D.M.Ritchie开发成功的,是用汇编语言写的)。
后来,C语言多次作了改进,但主要还是在贝尔实验室内部使用。直到1- 975年UNIX第6版公布后 ,C语言的突出优点才引起人们普遍注意。1977年出现了不依赖于具体机器的C语言编译文本《可移植C语言编译程序》,使C移植到其它机器时所做的工作大大简化了,这也推动了UNIX操作系统迅速地在各种机器上实现。例如,VAX,AT&T等计算机系统都相继开发了UNIX。随着 UNIX的日益广泛使用,C语言也迅速得到推广。C语言和UNIX可以说是一对孪生兄弟,在发展过程中相辅相成。1978年以后,C语言已先后移植到大、中、小、微型机上,已独立于UNIX和PDP了。现在C语言已风靡全世界,成为世界上应用最广泛的几种计算机语言之一。
以1978年发表的UNIX第7版中的C编译程序为基础,Brian W.Kernighan和 Dennis M.Ritchie(合称K&R)合著了影响深远了名著《The C Programming Lan- guage》,这本书中介绍的C语言成为后来广泛使用的C语言版本的基础,它被称为标准C。1983年,美国国家标准化协会(ANSI)根据C语言问世以来各种版本对C的发展和扩充 ,制定了新的标准,称为ANSI C。ANSI C比原来的标准C有了很大的发展。K&R在1988年修改了他们的经典著作《The C Progra- mming Language》 ,按照ANSI C的标准重新写了该书。1987年,ANSI C又公布了新标准--87 ANSI C 。目前流行的C编译系统都是以它为基础的。
Pascal的历史
沃斯的pascal
Pascal 语言最初由瑞士苏黎士理工学院的尼古拉斯-沃斯(Niklaus Wirth)教授在1971年设计, 作为Algol语言(1960年设计)简化本用于教学目的。
设计Pascal时,许多编程语言业已存在,但只有FORTRAN、C、Assembler、COBOL等少数语言在广泛应用。Pascal这种新语言的灵魂是其语言规则,Pascal语言规则的管理是通过强健的数据类型概念、强制性的数据类型声明与程序结构化控制来实现的,当时设计Pascal的初衷是想把这种语言用作程序设计课程的教学工具。
Turbo Pascal
1983年Borland公司推出了世界闻名的Pascal编译器 -- Turbo Pascal,实现了詹森和沃斯(Jensen & Wirth)在 “Pascal User Manual and Report” 中提出的思想 。由于既简洁功能又强,Turbo Pascal成为当时最畅销的编译器之一,而且在PC平台上非常流行。
Turbo Pascal中增添了集成开发环境(IDE),在这种开发环境中,你可在与WordStar 兼容的文字编辑器中编辑代码,可以运行编译器,查看编译错误并直接跳回到包含错误的行中。现在听起来上述功能似乎微不足道,但在Turbo Pascal之前你不得不退出代码编辑器返回到DOS,然后运行命令行编译器,记下错误行,再打开编辑器跳至错误行,非常烦琐。
此外,Borland公司的Turbo Pascal 售价只49美元 ,而Microsoft公司的 Pascal 编译器售价几百美元。 Turbo Pascal 取得多年的成功应归功于Microsoft最终放弃了Pascal 编译器产品。
Delphi中的Pascal
随着Turbo Pascal 编译器从第一版发布到第九版,Pascal语言得到了不断的发展,1995年Borland发布了Delphi ,使Pascal成为一种可视化编程语言。
Delphi 在很多方面扩展了Pascal语言,其中包括许多面向对象的扩展,这些扩展的风格与Object Pascal有所不同,同时Delphi 也提高了Borland Pascal with Objects 编译器的性能。
C#之父是谁?和详细信息?
c#之父是Anders Hejlsberg, 一个丹麦天才。他和idsoft的John Carmack都是自学成才的典范。他对语言和汇编的理解全世界没几个人能超越。(今天偶然从网上了解到这个大牛,很仔细的找了一些他的资料,人都有这样一个爱好,吃了一个好吃的鸡蛋,便想认识这个下蛋的母鸡,下面是关于此人的一些故事,网上得来,如有侵权,请留言告知!) 当年Philippe Kahn(Borland的创始人)和AndersHejlsberg到美国创业时,便由Anders以汇编语言撰写了Turbo Pascal的编译器,而Philippe则包办了TurboPascal其他的部分。在这两位仁兄开发TurboPascal之后,穷得快连登广告的钱都没有了。Philippe为了在Byte杂志(还记得这个著名的杂志吗?)刊登TurboPascal的广告,和Anders商量了一个方法,那就是直接约Byte杂志的人到当时Borland的办公室讨论刊登广告的事情。
当Byte的人到了Borland之后,Philippe、Anders和公司的助理小姐故意忙着接电话,接受TurboPascal的订单,并且告诉Byte杂志的人等一下。过了一阵之后Philippe才进入房间向Byte的人道歉,说他们的TurboPascal受到市场的热烈欢迎,订单源源不断地到来,因此可能不需要在Byte杂志刊登广告了,接着Philippe向Byte的人展示TurboPascal这个产品。由于在当时的机器中TurboPascal能够在极少的RAM中常驻执行,又提供闪电般的编译速度,这立刻让Byte杂志的人当场震惊。凭着专业知识和丰富的经验,Byte的人立刻知道这将是一个革命性的软件,因此马上希望Philippe能够在Byte杂志刊登TurboPascal的广告,并且愿意以半价刊登。当然,Philippe也立刻爽快地答应了,于是一个革命性的软件TurboPascal终于在Byte杂志刊登出来了。
当时售价49.99美元的Turbo Pascal立刻为Borland带来了大量的财富,Turbo Pascal也马上成为PC上除了基本的Basic之外最畅销的开发工具,由此正式揭开了Borland影响PC开发工具近20年的历史的幕。
Turbo Pascal是由Anders Hejlsberg亲自开发的,并且和PhilippeKahn谈好的条件是Borland每卖出一套TurboPascal,Anders便从中抽取一份版权费。由于当时软件的价格不算便宜,能够写编译器的人更是少之又少,所以编译器工程师通常都能够获得优厚的报酬。因此当时Anders Hejlsberg在完成了TurboPascal、并且和PhilippeKahn谈好了合作条件之后,Anders理所当然地认为一套TurboPascal会定价数百元美金,因为这不但是当时一般编译器的价格,而且Turbo Pascal还内含了一个开发环
境和编辑器(Editor),这是当时许多工具没有提供的。
没有想到极具商业头脑的Philippe Kahn了解到:如果把Turbo Pascal定价在数百美金,那么TurboPascal可能只会卖出数百到数千套,无法冲出大量的销售额。因此,Philippe Kahn以极大的勇气,瞒着AndersHejlsberg只把Turbo Pascal定价为49.95美金。这种价格在当时对于编译器和开发工具来说简直是不可思议的低价。当AndersHejlsberg知道了PhilippeKahn的定价后,简直快气昏了。因为在这么低的价格下Anders的版税金一定少得可怜,因此当时Anders说他把最好的Pascal开发工具拿去让一个白痴销售。没有想到的是,Philippe Kahn的定价策略获得了极大的成功。TurboPascal以极佳的品质和令人不可思议的低价格成为当时最具吸引力的Pascal开发工具。当然,在TurboPascal卖出了让人难以置信的成绩之后,Anders便再也不提他把专业Pascal编译器让白痴去卖这件事了。
虽然Turbo Pascal快速地让Borland在当时全世界的程序员中成为最响亮的软件新星,但是真正让Borland打人一般计算机使用人群、快速成长为软件巨人的大功臣的,却是Borland早期最重要的产品--SideKick。
在TurboPascal之后,Borland接着推出了SideKick这套软件。SideKick可以说是随后著名的内存常驻软件(Terminate andStayResident-TSR)的始祖,也是Borland跨出开发工具领域、让几乎所有PC使用者认识Borland的关键软件。SideKick在当时以许多丰富的小工具和记事功能让它成为每一个程序员爱不释手的工具。当然SideKick也很快成为了畅销软件,在全球狂卖数10万套,继续把Borland往顶尖的软件公司推进。
所谓的TSE代表Terminate and StayResident。这个意思是说,这类软件在执行后会隐藏在内存的某个位置中,但是并没有出现在屏幕上。不过使用者通过一个快捷键就可以立刻调出这类软件让使用者使用,在使用完毕之后又可以按一个快捷键再度隐藏它。这样的软件运行方式在当时是一项全新的创举。
以我的眼光来看,SideKick这个软件对于Borland来说是非常关键的作品,因为我将SideKick归类成"消费型软件"产品。所谓消费型软件,是指可以被所有计算机使用者使用的软件,而不是只给程序员或是开发者使用的软件。凡是现今比较会赚钱或是规模比较大的软件公司大都属于开发"消费型软件"的公司。例如Microsoft除了有和Borland竞争得你死我活的开发工具之外,最重要的是Microsoft拥有两大"消费型软件":Windows操作系统和Office。这两类软件才是Microsoft最赚钱的产品。Oracle是另外一个很好的例子,数据库几乎是现在任何应用都需要使用的软件。同样,SideKick就属于这一类型的软件,因为SideKick可以被所有的开发者使用来增加生产力,而不管开发者使用的是什么语言。因此当Borland推出SideKick之后,立刻在全世界狂卖,也成为继TurboPascal之后Borland最赚钱的产品。我认为在后来的数年之中Borland走得比较辛苦,便是因为Borland再也没有推出像SideKick一样属于"消费型软件"的重量级产品,而只有属于程序员和开发者小众市场的产品,这是非常可惜的事情。而"消费型软件"也是到现在我仍然认为Borland应该推出的产品。
由于SideKick的TSR技术是当时独一无二的,而且是如此的好用,这引起了当时许多人的好奇,并且成了所有软件厂商模仿的对象,我还记得稍后许多的计算机信息书籍都以如何学习TSR技术作为卖点。也是因为SideKick和TSR太成功了,因此Borland立刻进行了两个工作。第一当然是马上开发下一版的SideKick,让SideKick继续执类似软件的牛耳,以防止其他软件公司推出类似的软件来分食SideKick打下的天下。
在Borland通过TurboPascal和SideKick大获成功之后,也因TSR技术成为大多数开发者津津乐道的软件公司,许多软件公司都开始模仿Borland的TSR技术开发大量的TSR软件。不过当TSR技术大量被运作之后。最后却造成众多的TSR软件彼此冲突,无法正确地相互共存,这主要是因为许多TSR软件都使用了相同的快捷键来调出/关闭软件,或是隐藏在相同的内存位置。我还记得,当时同时使用几个TSR软件时,必须遵照一定的运行次序才可以正常使用。
为了解决这个扰人的问题,Borland开始广邀软件公司,想要以Borland为首制定TSR的标准。如此一来,只要所有的软件厂商遵照Borland制定的标准,那么所有的TSR软件就可以彼此正确地运行在PC之中。当Borland公布了这个想法并且发表了初步的TSR标准规格之后,却立刻引起了Microsoft的紧张。因为当时TSR是如此的流行,Microsoft害怕TSR技术由Borland主导之后会让Borland成为PC软件的霸主,进而严重影响Microsoft想主宰PC的计划。
因此在Borland开始正式制定TSR标准之际,Microsoft便站出来反对Borland定义的TSR标准,并且声明Microsoft将在未来的DOS操作系统中加入对于TSR的支持,因此没有必要再额外制定TSR标准。当时的软件公司,包括Borland在内,都无法和Microsoft对抗。在操作系统厂商表明了反对立场之后,Borland的这个构想很快便迫于形势而放弃了。关于TSR的争议应该算是Borland和Microsoft之间的第一场战争。虽然在没有引起太大的烽火之前便很快收场,不过也算是Borland和M1crosoft第一次真正的交手。也正是由于这次的相争,让Microsoft惊讶于Borland快速的兴起,并开始正视Borland这家在当时还算小的软件公司。
虽然在有关TSR的技术之争中Microsoft赢得了胜利,不过很奇怪的是,此后TSR软件反而开始慢慢地退烧。除了一些少数的公用程序软件仍然使用TSR之外,之后便没有什么重量级的软件是使用TSR技术开发的,这算不算是另一桩Microsoft介入之后搞砸的技术呢?
最后再叙述一个从Borland老员工处听来的有趣故事。许多人一直想要知道:Borland的总部在哪里?或是想要知道:为什么Borland会选择Scott Valley作为总部?事情的经过是这样的:
当年Philippe Kahn和Anders Hejlsberg到美国准备开始创业时,由于没有资金,Philippe Kahn就在西餐厅打工,负责端盘子的工作,而Anders Hejlsberg则努力的在开发Turbo Pascal。
当Philippe Kahn存了一笔小钱之后,两个人便开始了创业大计。首先他们必须找到一个公司的总部,可是要在哪里实现PhilippeKahn和Anders Hejlsberg心中的理想呢?虽然当时他们住在L.A.附近,但是光凭PhilippeKahn存的一点小钱是绝不够在L.A.大展鸿图的,因此Philippe Kahn和AndersHejlsberg决定到比较偏远的地方试试。于是这两位仁兄便开着Philippe Kahn的破车往南出发了。听说当PhilippeKahn把车开到Scott Valley附近时刚好没有汽油了,眼看四周的环境觉得还不错,就决定在这个地方展开PhilippeKahn和Anders Hejlsberg的创业之梦。就是这个决定让原本默默无闻的ScottValley在数年之后竟成为一个家喻户晓的高科技盛地。
Anders在不介入Delphi的开发、并且无法主导BorlandJava开发工具开发的情况下充满了挫折感。没有了PhilippeKahn的强力支援,Anders虽然是Borland最顶尖的技术人才,却也无法对抗Borland管理阶层的控制。当然这也与从PhilippeKahn离开之后、Borland开始转型有关。
Anders在Borland遇到了挫折,这对于Microsoft来说却是千载难逢的好机会,就在此时Microsoft展开了大规模的挖角行动,而且是明目张胆地进行,正是由于Microsoft如此大胆的行动,造成了不久之后Borland对于Microsoft的法律控诉。这次的挖角行动中,Microsoft同时锁定了数个Borland最杰出或是重要的人物,当然Anders是名列第一的对象。1996年,Microsoft终于展开了行动,使用的方式是最直
接的进攻。Microsoft直接派遣加长型的大轿车到Borland大门口接Anders吃饭,第一次Microsoft开出了年薪百万美元以上的条件。不过在Borland知道了这些情况之后,也很快采取了加薪的动作,因此Anders并没有立即对Microsoft作出回应。Microsoft并未因此灰心放弃,很快就再次用大轿车接Anders。这次Microsoft提出了年薪两百万美元以上的条件,希望Anders能够首肯。对于这次的喊价,Borland可有点为难了,因为两百万美元不是笔小数目,这已经比当时Borland许多副总裁的年薪还高。此外,如果 Borland答应也加到两百万以上,那么是不是Chuck也要如此加码?其他的DelphiR&D小组要如何调整?这些都是非常棘手的问题。
不过Borland很快找到了解决的方案,那就是允许Anders从每一套卖出的Delphi版本中抽取一定数量的版权费。如此一来Delphi卖得愈好,Anders便能取得愈多的回馈。不过据我了解,Anders注重的并不是金钱待遇,因为在Borland创立的初期,由于TurboPascal的编译器都是Anders撰写的,当时也是卖一套Turbo Pascal就可以抽取一份版税。依照Turbo/BorlandPascal全世界销售数百万套来算,Anders早就是富翁了。薪水多一点,少一点并不是他考虑的最主要因素,他心中想的是自由发展的空间。在Borland提出了Delphi的随版抽税,再加上Microsoft并不知道Anders真正想要的东西,因此Anders仍然没有响应Microsoft的第二次。不过,Anders实在是太重要的人物,而且Microsoft在面对Java与日俱增的威胁之
下,非常渴望能够有像Anders这样的人才带领开发下一代的开发工具,这当然也是由于Microsoft以前向Borland挖来的人都做出了不小的贡献所致。Microsoft食髓知味,当然希望能够得到Borland的镇山之宝。在Anders两次不为所动之后,Microsoft决定祭出最后的王牌,由Bill Gates亲自邀约Anders聚餐,进行最后的挖角冲刺。
不管读者喜不喜欢BillGates,不可否认的是Bill也是一个天才。自古英雄惜英雄,在Anders和Bill相谈甚欢的情形下,Microsoft又开出了年薪三百万以上、数万股的Microsoft股票这个超高的条件,以当时Microsoft高昂的股价来计算,真是一笔巨额财富,对于搞软件技术的人来说,这已经是不可企及的天文数字了。不过这些条件并不是打动Anders的主要原因,Bill最后还答应 给Anders一个小组的人力和充分的资源,供他尽情地发挥。这个条件可说是正中Anders的下怀,因为他最渴望的正是有人能够支持他完成新的计划和想法。我想,在软件产业中大概也只有Microsoft能够拥有这种雄厚的资源可以用来挖角吧。
在BillGates提了这样的条件之后,Borland再也没有本钱能够和Microsoft相抗衡了,只好眼睁睁地看着Anders离开Borland前往Microsoft再开创下一个人生的高峰。在Anders到了Microsoft之后,BillGates果然重用Anders,立刻让Anders负责激活Microsoft的下一轮开发工具计划,当然这个计划也是Microsoft对抗SUN/Java的整体计划之一。Anders也立刻展现了实力,让Microsoft的编译器技术很快有了提高,最明显的例子就是Microsoft后期的Java Virtual Machine是PC上执行效率最高的,而且在两
三年后,VJ++编译出来的虚拟机械码的执行效率不但比任何的Java开发工具还快,在某些方面甚至比原生的Windows开发工具,例如Delphi、VB、甚至是VC++还有效率。这真是令人震撼,当然Anders为VJ ++打下的基础现在也展现在.NET的C#编译器以及.NET的JIT(Just InTime)编译器之上,.NET的JIT在许多程序代码最佳化方面比Delphi还先进。因此在两三年前当VJ++即将推出之际,在Borland内部也引起了非常大的骚动,并且严阵以待,当然这又是另外一个故事了。
对于Anders来说,到了Microsoft之后不久又再次登上了生涯的另一个巅峰。因为当初在Borland时,他还如孙子兵法中叙述的藏于九地之下,虽然是不世的天才,但是仅为少数的人所知,即使是使用Borland产品的人在当时可能也不知道Anders这号人物。因为Anders和Borland的作风很像,都是行事低调,不显山露水。但是他被挖到Microsoft之后,由于Microsoft的企业文化向来是激越、张扬个性的,因此Anders也就转变为 动于九天之上,作为负责Microsoft开发工具大军的核心人物,不但广为人知
,成为许多软件人员效法的对象,而且屡获大奖。他不但获得了信息软件业界的推崇,最后也终于获得了信息学术界的认可,可说是实至名归。