注册娱乐账号 登陆娱乐平台 娱乐客户端
信博娱乐国际会所中心,信博娱乐注册欢迎您!图片
信博娱乐国际会所中心,信博娱乐注册欢迎您!
信博娱乐国际会所中心,信博娱乐注册欢迎您!官网

娱乐技巧

信博娱乐:Turbo Pascal_

标题:Turbo Pascal Turbo Pascal是一个软件开发系统,包含一个编译器和一个用于在CP / M,CP / M-86和MS-DOS上运行的Pascal编程语言的集成开发环境(IDE)。它最初是由Borland的Anders Hejlsberg开发的,因其编译时间极快而着名。 Turbo Pascal,以及后来的但类似的Turbo C,使Borland成为基于PC的开发的领导者。 对于版本6和7(最后),生产价格较低的Turbo Pascal和更昂贵的Borland Pascal; Borland Pascal更专注于专业软件开发,拥有更多的库和标准库源代码。 Borland Pascal这个名字也被更普遍地用于Borland的Pascal编程语言方言,与标准Pascal有很大不同。 Borland已经发布了Turbo Pascal的免费三个旧版本,因为他们的历史价值:原来的Turbo Pascal(即现在的1.0),和版本3.02和5.5 DOS [2] [3] [4] Philippe Kahn首次在编程工具领域看到了他新成立的软件公司Borland的机会。从历史上看,绝大多数程序员在编辑/编译/链接循环方面看到了他们的工作流程,并为每个任务分配了不同的工具。程序员使用文本编辑器编写源代码;然后将源代码编译成目标代码(通常需要多次传递),链接器将目标代码与运行时库组合起来生成可执行程序。 在早期的IBM个人电脑市场(1981-83),主要的编程工具厂商都制作了类似的编译器。例如,Microsoft Pascal系统由两个编译器传递和一个最终链接传递组成(尽管程序比现在小很多,但系统只需要用于辅助存储的软盘)。与后来的集成开发环境(IDE)相比,此过程耗费的资源更少。软件开发工具的供应商将他们的产品瞄准专业开发人员,这些基本工具的价格以及配置工具(如分析器)的价格高达数百美元。 卡恩“的想法是包装于一体的综合编程工具包,设计所有这些功能有比普通专业开发工具,更好的性能和资源利用率,收费低廉的封装中集成一个自定义的文本编辑器,编译器和所有功能需要制作可执行程序,该程序通过直接邮购以49.95美元的价格出售,而无需通过建立的销售渠道(零售商或经销商)。 与其他一些开发工具不同,Turbo Pascal磁盘没有复制保护。 Turbo Pascal出现了着名的“图书许可证”:“您必须像书本一样对待这个软件......它可以被任何数量的人使用......可以自由地从一个计算机位置移动到另一个位置只要在一个地方使用而不在另一个地方使用它的可能性。“[5] BYTE的Jerry Pournelle在1984年2月写道,Turbo Pascal“接近我认为的计算机行业的目标:有据可查,标准,大量优秀特性和合理的价格”。 Pournelle不喜欢购买另一个许可证来分发二进制文件的需求,但指出“事实证明,这并不是很多,Borland只需要再花49美元的基础价格再购买100美元”,我对Turbo的第一印象就是它“可能价值149.95美元。它看起来可以用速度编程软件包来完成所有的MT +,甚至可以做得更快更好“[6]他在7月份报道说,据Kahn称,IBM拒绝转售Turbo Pascal,除非价格至少200美元; Pournelle指出“Turbo比IBM的Pascal好得多”,不像后者与IBM PCjr兼容。[7]三位BYTE评论家在同一个问题上称赞Turbo Pascal,一位称为DOS版本“毫无疑问,最好的软件价值,我曾经购买“另一个称为CP / M版的‘优良的产品... [Borland公司]值得赞扬这种高价值的产品。’第三个说,”没有一个良好的编译器开发大量的应用“但补充说,这是大大优越于BASIC,通常与当时家用电脑相关的编程语言。他的结论是,Turbo Pascal的是‘这不应该’T传递了”大便宜。[8] 尽管在3.0版本中发现了它的“严重错误”,并且与PC克隆的兼容性下降,但该杂志在1986年2月表示“很难避免向任何想要在Pascal编程的人推荐Turbo”,理由是速度提高和图形例程。[9]当BYTE在1986年12月审查其他四位Pascal编译器时,BYTE将Turbo Pascal描述为“对所有专业水平的程序员都很实际和具有吸引力”。[10]布鲁斯·韦伯斯特也在杂志中称赞了这种语言,并于1985年8月指出,Turbo Pascal“以其小型,难以置信的编译速度和快速执行时间而闻名”。他指出,在“JRT Pascal惨败”之后,软件的质量和低廉的价格特别令人惊讶,并表示即使在新的69.95美元的价格上,3.0版本“可能仍然是市场上最好的软件交易” 11] “PC杂志”在1984年11月也获得类似的赞誉,称“以前没有像Turbo Pascal曾经为PC-DOS存在过”。它赞扬软件的价格低廉,速度快,编译器出色的文档,并指出其他公司希望受益于Turbo Pascal受欢迎程度的许多实用程序的存在。该评论指出,简化编辑 - 编译 - 运行 - 调试循环的IDE使Turbo Pascal可以被BASIC等新程序员访问。 1989年,BYTE将Turbo C和Turbo Pascal列为BYTE Awards的“杰出”获奖者之一。该杂志引用了他们的用户界面并继续强调速度,他表示“对于快速原型设计来说并没有太大的好处”[13]。同样的问题Pournelle再次称赞Turbo Pascal的4.0和5.0版本,引用Anacreon为“好例如你可以在Pascal中编写的程序有多复杂,以及Borland和其他开发人员提供的许多库,他写道:“我越来越相信Turbo Pascal是那些对什么更感兴趣的人选择的编程语言他们希望机器能做到而不是如何做到这一点。 Turbo Pascal可能既不优雅也不像C那样便携,但它确实不太模糊,我认为它可能是我们其他人的语言。“[14] Borland在两年内售出了约25万台Turbo Pascal,这被韦伯斯特形容为“计算机语言的惊人数字”[11]。他在六个月后报告说,这个数字已经上升到“市场上超过400,000份,据估计只有30,000个潜在买家”。[15] Turbo Pascal编译器基于最初为Anders Hejlsberg于1981年为Nascom微型计算机的NasSys盒式操作系统生产的Blue Label Pascal编译器。 Borland授权Hejlsberg的“PolyPascal”编译器核心(Poly Data是丹麦Hejlsberg公司的名称),并增加了用户界面和编辑器。 Anders Hejlsberg作为一名员工加入该公司,担任所有版本的Turbo Pascal编译器和Borland Delphi的前三个版本的架构师。[2] 该编译器首次发布为Compas Pascal for CP / M,然后于1983年11月20日发布为CP / M的Turbo Pascal(包括配备Z-80 SoftCard的Apple II计算机,有效地将基于6502的Apple进入CP / M机器,带有CP / M墨盒的Commodore 64以及后来的DEC Rainbow),CP / M-86和MS-DOS机器。在美国市场上推出的Turbo Pascal零售价为49.99美元,这是当时编译器的极低价格。与其他时间的Pascal产品相比,集成的Pascal编译器质量高。[16] Turbo的名字暗示了编译速度和制作的可执行文件的速度。与其他Pascal实现相比,编辑/编译/运行周期相对较快,因为与构建程序相关的所有内容都存储在RAM中,并且因为它是用汇编语言编写的单通编译器。编译比其他语言的编译器(甚至Borland自己编译后的C编译器),[需要的引用]和其他Pascal编译器的编译器要快得多,而且由于可以从IDE编译并运行该程序,程序员的时间也得到保存。这些COM格式程序的速度对于开发人员来说是一个启示,他们以前只有编程微机的经验是使用解释的BASIC或UCSD Pascal,后者编译为p代码,然后在运行时解释。 对于运行带有64 KB内存和至少一个软盘驱动器的MS-DOS,CP / M或CP / M-86的计算机,有不同的Turbo Pascal版本。 CP / M版本可以在8080或Z80处理器或苹果公司的Z80卡上运行在许多CP / M机器上。 MS-DOS和CP / M-86版本在许多可用的8086和8088机器上运行,包括IBM PC。安装程序,列表程序和编译器及其IDE,以及Philippe Kahn编写的一个简单的电子表格程序MicroCalc的源代码作为演示,可以放在一张软盘上。没有MicroCalc的光盘拷贝将容纳一个合理大小的程序,因为它在当时是共同为用户只有一个软盘驱动器作为海量存储,这是一个极大的方便的源代码和编译的可执行文件,以便能够适应编译器和程序都写在一张光盘上,避免了无休止的光盘交换。 比尔盖茨以非常个人的角度看到了Turbo Pascal的成功,“不能理解微软为什么如此之慢。他将带来贫穷格雷格·惠滕[微软语言编程主任]和呼喊在他半小时。”他couldn‘T理解为什么卡恩已经能够击败既定竞争对手如微软。’[17] 当时8080 / Z80 / 8088/8086机器的计算资源有限。特别是RAM很贵。运行DOS的各种机器的体系结构额外地将最大值限制在1MB以下(例如,与IBM PC硬件兼容的机器被限制为640KB),尽管对于大多数用户来说没有任何东西接近这个限制。 TP IDE在当天非常先进。它能够很好地运行,并且可以在一台典型的家庭计算机上使用大量RAM进行编译。 IDE使用起来简单直观,并且有一个组织良好的菜单系统。早期版本的编辑器使用WordStar的关键功能,这是当时事实上的标准。针对具有更多磁盘空间和内存的PC而设计的IDE的更高版本可以通过将光标置于关键字并按F1键(通常用于显示帮助)来显示语言关键字的定义。许多定义包括示例代码。 除了标准的可执行程序之外,编译器还可以生成终止和停留驻留(TSR)程序,驻留在内存中的小型实用程序以及让计算机执行其他任务 - 同时运行多个程序,多任务,否则不可用。 Borland自己制作了一个名为Sidekick的小应用程序套件,该应用程序套件是一个让用户记录日记,记录等等的TSR。 版本2和3对原始Turbo Pascal进行了增量改进,这是一个基本的一体化系统,在内存中工作,为DOS和CP / M生成.COM可执行文件,以及为CP / M-86生成.CMD可执行文件与稍后在32位Microsoft Windows中使用的.CMD批处理文件完全不同)。[3]源代码文件被限制为64 KB以简化IDE,并且DOS .COM文件被限制为每个代码,堆栈和全局(静态)变量64 KB。程序源代码可以通过使用包含文件进行扩展,并且.COM程序可以被覆盖,[18]如果它们不适合内存,则可以有效地使用虚拟内存。 1987年发布的第4版完全重写,外观和内部操作都发生了很大变化;版本5至7是渐进式改进和扩展。编译器在DOS下生成.EXE格式的可执行文件,而不是更简单但更受限制的.COM可执行文件。 TP重写后,过时废弃的CP / M和CP / M-86操作系统版本被丢弃。版本4引入的单位,以及带有下拉菜单的全屏文本用户界面;早期版本有一个基于文本的菜单屏幕和一个单独的全屏编辑器。 (当第一个版本发布时,微软Windows仍然是非常实验性的,甚至连老鼠都很少。) 彩色显示器正在取代单色; TP版本5.0引入了Borland的蓝色屏幕,Borland的DOS编译器使用该屏幕直到90年代中期该产品线的结束。 后来的版本有两个具有相同版本号的软件包:一个不太昂贵的“Turbo”软件包和一个具有增强功能和更多附加软件的“Borland”软件包。 虽然所有版本的Turbo Pascal都可以包含内联机器代码,但从版本6开始,可以将汇编语言集成到Pascal源代码中。[19] 内联汇编,编译器选项和诸如“绝对”关键字之类的语言扩展提供了对8086内存模型的支持。 Turbo Assembler,TASM是一个独立于TP源的标准x86汇编程序,与广泛使用的Microsoft Macro Assembler MASM兼容,它提供了增强的“Borland Pascal”版本。 IDE提供了几个调试工具,包括单步执行,检查和变量变量以及条件断点。在以后的版本中,汇编语言块可以被逐步完成。用户可以在IDE窗口中添加变量和寄存器的断点。使用IBM PC图形模式的程序可以自动或手动在图形和文本模式之间切换,或在两个屏幕上同时显示。对于IDE相对简单的调试设备不足的情况,Turbopower软件公司生产了一个更强大的调试器T-Debug。[20]同一家公司为Turbo Pascal制作了Turbo Analyst和Overlay Manager。后来,T-Debug针对Turbo Pascal 4进行了更新,但Borland的Turbo Debugger(TD)的发布终止了版本,该版本还允许在配备新的80386处理器的计算机上进行一些硬件干预。 TD通常与Turbo Assembler和Turbo Profiler一起提供,它是一个代码剖析器,它报告了在程序的每个部分花费的时间,以便通过查找瓶颈来协助程序优化。[21] Borland Pascal附带的书籍详细描述了英特尔汇编语言,包括每条指令所需的时钟周期数。除非需要Turbopower T-Debug和后来的TD的高级调试工具,否则开发和调试可以完全在IDE中进行。 后来的版本还支持通过RS232通信电缆进行远程调试。[22] 多年来,Borland不仅增强了IDE,还扩展了编程语言。基于ISO标准Pascal的开发系统需要特定于实现的扩展,以在他们的目标平台上开发真实应用程序。标准Pascal设计为与平台无关,因此不规定对硬件或操作系统相关设施的低级访问。标准Pascal也没有规定如何将大型程序拆分为单独的编译单元。从版本4开始,Turbo Pascal采用了UCSD Pascal的单元概念。单位被用作外部函数库,如其他语言(如FORTRAN或C)中使用的对象文件。 例如,该行使用crt;在一个程序中包含了一个叫做crt的单元;用途是使用其他编译单元的机制。界面和实现是用来在单元内指定什么是(和什么不是)单元外可见的关键字。这与其他语言(如C ++和Java)中的公共和私人关键字类似。 Borland的Pascal中的单元与Modula-2的单独编译系统类似。 1987年,当Turbo Pascal 4发布时,Modula-2作为一种教育语言取代了Pascal。事实上,Borland有一个Turbo Modula-2编译器,但是这个产品只运行在CP / M上,并且从未移植到DOS(其用户界面几乎与Turbo Pascal 1-3相同)。 Borland没有将Modula-2编译器移植到DOS,而是选择在其已建立的Pascal产品中实现单独的编译。 单独的编译不是标准Pascal语言的一部分,但已在UCSD Pascal中使用,这在8位机器上非常流行。单位的Turbo Pascal语法似乎是从UCSD Pascal借来的[23]。早期版本的Turbo Pascal是为资源有限的计算机设计的,它并不需要它(语言有必要在程序中包含单独的源代码,TP3支持覆盖),但作为计算和存储设施高级并且能够生成大型EXE文件被添加到Turbo Pascal中,程序变得庞大而复杂,足以受益于单独的编译。 从版本5.5开始,引入了一些面信博娱乐平台向对象的编程特性:类,继承,构造函数和析构函数。[4] IDE已经增加了一个对象浏览器界面,显示对象和方法之间的关系,并允许程序员轻松地导航模块。 Borland称其语言为Object Pascal,该语言被极大地扩展为Delphi的基础语言(它有两个独立的OOP系统)。 “Object Pascal”这个名称源于Apple Inc.开发的Pascal扩展,用于编程其Lisa和Macintosh计算机。帕斯卡创始人尼克劳斯沃斯在开发这些扩展时进行了咨询,这些扩展基于Pascal中已经存在的记录类型。 针对Windows 3.x的两个版本名为“Turbo Pascal for Windows”(TPW),针对Windows 3.x发布:基于Turbo Pascal 6的TPW 1.0,但在大约2年后发布,1.5版在Turbo Pascal 7后发布;他们由Borland Pascal 7成功,后者支持Windows。 Pascal 7中的Windows编译器标题为Windows的Borland Pascal“。 这两个版本都构建了与Windows兼容的程序,并采用了基于Windows的IDE,与Turbo Pascal中的基于DOS的IDE相反。 IDE和编辑器命令符合Microsoft Windows用户界面准则,而不是传统的TP用户界面。对Windows程序的支持需要ObjectWindows库,与第一版Borland C ++类似,但与之前的DOS Turbo Vision环境截然不同。 Delphi的Turbo Pascal被Windows平台所取代;除了GUI应用程序之外,Delphi编译器还可以生成控制台程序,所以Turbo和Borland Pascal的使用变得不必要了。 Borland在1985年发布了用于Macintosh的Turbo Pascal。就像其他操作系统的版本1到3一样,它是用紧凑的汇编语言编写的,并且具有非常强大的IDE,但没有好的调试器。 Borland并不十分支持这款产品,尽管他们发布了1.1版本,并在3信博娱乐平台2位Macintosh II上运行。 Macintosh支持很快就被丢弃了。 到1995年,Borland已经放弃了Turbo / Borland Pascal,并将其替换为基于Object Pascal的快速??应用程序开发(RAD)环境Delphi。 32位和64位Delphi版本仍然支持早期产品(即那些不是特定于16位代码的产品)的更可移植的Pascal增强功能,包括早期的静态对象模型。这个语言向后兼容意味着很多旧的Turbo Pascal代码仍然可以在现代环境中编译和运行。 其他供应商已经生产出兼容Turbo Pascal的软件开发工具。最着名的是Free Pascal和Virtual Pascal。 Borland在2002年成为“古董软件”(放弃软件)后发布了多个版本的Turbo Pascal作为免费软件。[24]最新发布的国际版本是TP 5.5,而较新的法语TP 7.01也作为免费软件发布。[25] Embarcadero Technologies的继任者网站上仍有下载。[2] [3] [4] Borland Pascal仍然在中学,六年级和大学水平的一些国家教过。它在哥斯达黎加,土耳其,德国,俄罗斯联邦,美国,马耳他以及阿根廷,比利时,保加利亚,加拿大,哥斯达黎加,克罗埃西亚,法国,意大利,牙买加,利比亚,摩尔多瓦,罗马尼亚的中学,塞尔维亚,突尼斯,乌克兰和越南。这是2002年以前所有南非中学批准的国家批准的教育编程语言。今天,世界上一些大学继续教导计算机编程,通常是C或Java或两者兼而有之。 有些讲师更喜欢使用Borland Pascal 7或Turbo Pascal 5.5,因为它比较现代的IDE(如Microsoft Visual Studio或Borland JBuilder)相对简单,因此它将不熟悉计算的学生引入常见任务,例如使用键盘和键盘快捷键TP 5.5没有鼠标支持),使用DOS命令(与Microsoft Windows的命令提示符大致相同)对它们进行家族化,并让它们编写程序,而无需花费大量精力来实现环境。可以从Borland免费下载。[24] [25] 几个版本的Turbo Pascal,包括最新的版本7,都包括许多全屏文本模式应用程序使用的CRT单元。该单元在其初始化部分包含代码,用于确定CPU速度和校准延迟环路。该代码在速度大于约200 MHz的处理器上失败,并立即以“运行时错误200”消息中止。 (错误代码200与CPU速度200 MHz无关)。这是因为循环运行来计算它可以在固定时间内迭代的次数,如实时时钟所测量的。当Turbo Pascal开发出来的时候,它运行在CPU频率为1到8 MHz的机器上,很少有人想到速度可能会更高,因此从大约200 MHz开始,可以运行足够多的迭代来溢出16位计数器[ 27]当机器对于原始方法变得太快时产生补丁,但随着处理器速度进一步增加而失败,并被其他人取代。 出现此错误的程序可以使用补丁编译器修复源代码来重新编译,以消除错误(使用TURBO.TPL本身用修正的CRT单元编译),或者如果源代码不可用,可执行文件可以通过名为TPPATCH或相当的[28],或者在运行故障程序之前加载加载的终止和驻留程序[29]。 也有TP7编译器本身的补丁,因此如果Pascal源代码可用,新的编译代码就可以工作,编译代码不必修补,如果源代码可用,则移植到不带CPU的库时钟速度依赖也是一个解决方案。[31] 有几种浮点类型,包括单个(4字节[IEEE 754]表示)double(8字节IEEE 754表示),扩展(主要在数字协处理器内部使用的10字节IEEE 754表示)和Real一个6字节的表示)。 在早期,Real是最受欢迎的。许多PC没有浮点协处理器,所以所有的FP都必须用软件完成。 Borland在Real上自己的FP算法比使用其他类型更快,尽管它的库也在软件中模拟了其他类型。 这是Turbo Pascal中的经典Hello世界程序: 这需要一个名字并将其写回屏幕上百次: