BASIC

编辑 锁定
BASIC(Beginners' All-purpose Symbolic Instruction Code,又译培基),意思就是“初学者通用符号指令代码”,是一种设计给初学者使用的程序设计语言。BASIC是一种直译式的编程语言,在完成编写后不须经由编译及连结等手续即可执行,但如果需要单独执行时仍然需要将其建立成执行档。
BASIC达特茅斯学院院长、匈牙利人John G. Kemeny与数学系教师Thomas E. Kurtz在研制出来的。1964年BASIC语言正式发布。第一个BASIC程序在1964年5月1日早上4时,由BASIC编译程序进行编译后成功运行[1] 。1975年,比尔·盖茨把它移植到PC上。
中文名
培基
外文名
Beginners' All-purpose Symbolic Instruction Code
意 思
初学者通用符号指令代码
创作时间
1964年
创始人
JohnG.Kemeny、ThomasE.Kurtz
类 别
计算机语言

发展历程 编辑

初期阶段

创始者 创始者
20世纪60年代中期,美国达特茅斯学院约翰·凯梅尼(J. Kemeny)和托马斯·卡茨(T. Kurtz)认为,像FORTRAN(世界上最早出现的计算机高级程序设计语言)那样的语言都是为专业人员设计,没有办法普及。于是,他们在简化FORTRAN的基础上,在1964年研制出一种“初学者通用符号指令代码”(Beginner's All-purpose Symbolic Instruction Code),简称BASIC[2]
BASIC语言本来是为校园的大学生们创造的高级语言,目的是使大学生容易使用计算机[3] 。虽然初期的BASIC语言功能弱、语句少,只有14条语句(后来发展到17条语句)[4] ,但由于BASIC在当时比较容易学习,它很快从校园走向社会,成为初学者学习计算机程序设计的首选语言[3] 。这个时期的BASIC主要在小型机上使用,以编译方式执行[4]

微机阶段

20世纪70年代,BASIC语言发展成为一种广泛使用的通用语言,也正是这个年代,微型计算机诞生了,做为必备的软件,各种微机上都配备了BASIC语言,例如:Apple BASIC、IBM BASIC(BASICA)等。由于各机型不同,它们对基本BASIC语言的扩展也不相同,导致了同是BASIC语言程序却不能互相兼容的局面(例如各种BASIC语言的绘图语句差别很大),即所谓“方言性”问题[4]
1973年,美国DEC公司的小型机PDP装上了BASIC语言。因为害怕人们难以理解“编译”这一概念,他们研制了BASIC的解释程序,用它代替BASIC的编译程序。至此,BASIC语言可通过编译或解释两种途径将程序翻译成机器指令[1]
1975年,比尔·盖茨创立的Microsoft,并成功的把Basic语言的编译器移植到使用 Intel处理器的ALR计算机中,IBM在1982年选定Microsoft创作PC的操作系统时,也选定了Microsoft的Basic作为其计算机的ROM-Basic[5]

结构化阶段

BASIC语言谱系图 BASIC语言谱系图
在20世纪80年代中期,美国国家标准化协会(ANSl)根据结构化程序设计的思想,提出了一个新的BASIC标准草案。在此前后,出现了一些结构化的BASIC语言,主要有True BASICQuick BASICTurbo BASIC等。[4]
1985年BASIC的两位创始人推出的True BASIC,对BASIC语言作了重大改进和发展,它严格遵循ANSI BASIC,不仅完全适应结构化和模块化程序设计的要求,而且保留了BASIC语言的优点——易学易懂,程序易编易调试,它同时提供了解释工作方式和编译工作方式。他们宣称,True BASIC的出现将开始BASIC的新纪元[4]
1987年Microsoft公司推出的Quick BASIC,它提供了一个开发程序的集成环境,用户在编程序、修改、编译、调试、运行时均可通过菜单进行操作、十分方便;并且与GW-BASICBASICA高度兼容,提供了全局变量局部变量;程序模块化;编译后产生一个可执行文件,提高执行效率[3]
1991年6月,伴随着MS-DOS 5.0的推出,Microsoft公司也同时推出了QBASIC,并作为MS-DOS 5.0的一个组成部分免费提供给用户。QBASIC与Quick BASIC完全兼容,是Quick BASIC的简化版本,除不能编译及减少了初学者暂时用不着的一些调试工具外,它具有Quick BASIC的大部分功能。QBASIC采用先进的解释方式,速度更快,是一种会话式的语言,编写的程序可以立即运行并得到结果[3]

VB阶段

1991年4月,Visual Basic 1.0 for Windows版本发布,这在当时引起了很大的轰动,许多专家把VB的出现当作是软件开发史上的一个具有划时代意义的事件[6] 。Visual BASIC意为“可视的BASIC”,即图形界面的BASIC,它是用于Windows系统开发的应用软件,可以设计出具有良好用户界面的应用程序。Visual BASIC与Quick BASIC兼容,用Quick BASIC编写的程序可以不加修改地运行于Visual BASIC[4]
VB 6.0版本界面 VB 6.0版本界面
1998年6月15日,Microsoft公司推出Visual BASIC的第6版(即6.0版本),之后,又推出Visual Basic 6.0中文版[4] 。VB 6.0作为Microsoft Visual Studio 6.0工具套件之一,它提供了图形化、ODBC实现整合资料浏览工具平台,提供了与OracleSQL Server的数据库链接工具。VB 6.0的Web开发特性可以使得开发人员以更方便、组件式的方法,开发各种HTML和动态HTML的应用程序。这些新特性,使得VB 6.0成为建立可扩展的企业应用开发平台的理想选择[6] 。Microsoft公司总裁比尔·盖茨宣称:“Visual BASIC是迎接计算机程序设计挑战的最好例子”[4]
2001年,VB.NET发布。由于使用了新的核心和特性,很多VB的程序员都要改写程序。2005年11月7日,VB.NET 2005(v8.0)发布。它可以直接设计出Windows XP风格的界面,但是其编写的程序占用内存较多。2010年4月,VB.NET 2010(v10.0)发布[6]
Visual BASIC属于第四代BASIC,第四代BASIC的特点是:提供图形界面取代过去的字符界面,是“for Windows”的软件[4]

语法规则 编辑

语句

一、基本BASIC的17种基本语句
1.赋值(LET)语句
  2.键盘输入(INPUT)语句
  3.读数(READ)语句
  4.置数(DATA)语句【配合读数语句使用,称读数据(READ/DATA)语句】
  5.恢复数据区(RESTORE)语句
  6.无条件转移(GOTO)语句
  7.条件转移(IF~THEN或IF~GOTO)语句
  8.注释(REM)语句
  9.循环说明(FOR)语句
  10.循环终了(NEXT)语句【与循环说明语句合成循环(FOR~NEXT)语句】
  11.暂停(STOP)语句
  12.自定义函数(DEF)语句
  13.转子(GOSUB)语句
  14.返回(RETURN)语句【配合转子语句使用,调用子程序
  15.数组说明(DIM)语句
  16.打印(PRINT)语句
  17.结束(END)语句[7]
二、BASIC语言中常用的语句定义符及其含意
LET让、令GOTO转移到STOP暂停
IF如果THENDATA数据
FOR对于TODIM维数
STEP步进值NEXT下一个GOSUB转子
PRINT打印INPUT输入DEF定义函数
RESTORE恢复END结束REM注释
RETURN返回READ
  

  
[7]

词法

一、数的表示方法
BASIC中有数值常数及字符型常数。字符型常数为用引号括起来的一串字符,也称为字符串。引号不是字符串的一部分,仅作为字符串的起止界限。每个字符在机内占一个字节。
在N-BASIC中数值常数分为整型、定点型、浮点型(单精度及双精度)、十六进制常数及八进制常数等。
二、变量的表示方法
变量有数值变量及字符型变量,前者是存放数值的,后者存放字符串。变量的值在程序执行过程中是不断变化的。当程序执行到某处赋予变量新的值就要“冲掉”它原有的值。
三、运算符
1.算术运算符:任一个数学表达式中的算术运算是按优先度进行运算的,相同优先度自左向右顺序作。
2.赋值运算符:用“=”表示赋值时称为赋值运算符, 用它来给数值变量赋数值常数或给字符型变量赋字符型常数。
3.关系运算符(亦称比较算符):关系运算符是用来比较两个表达式的,每个表达式都是算术表达式,在比较时,先算出表达式的值然后比较。用关系运算符也可以比较字符型变量,字符型常数及字符型函数等。
4.布尔运算符(或称逻辑运算符):布尔运算符是对一个或两个表达式进行逻辑运算。
四、标准函数
BASIC语言中配备了一些常用的函数,用户可以自由调用,调用时写好函数名后面加一括号,括号内X的位置写上实在参数就可以了,实在参数可使用常数、变量、表达式或标准函数等。
标准函数 标准函数
五、运算规则
算术表达式中运算的优先度可按如下次序:
1.先算括号,由里向外脱括号。
  2.计算标准函数值。 ’
  3.乘幂。
  4.乘或除:白左向右倾序作。 ‘
  5.加或减:自左向右顺序作。
其它的运算优先度按前面算术运算符的排列进行。
六、BASIC表达式
用符合BASIC规定的运算符号将数、变量、函数、数组元素连接起来的复杂运算对象称为BASIC表达式。注意BASIC表达式中每个符号都占一格,所有符号都必须一个接一个写在一横线上,不能出现在右上角或左下角。[8]

代码示例

以下代码为m与a两数相乘输出结果:
PROGRAM product
LET m = 2                         
LET a = 4                        
LET force = m*a                   
PRINT force
END
[9]

语言特点 编辑

一、BASIC语言比较简单
基本BASIC一共只有17个基本语句,它使用的命令都是用英文表示的,英文的含意和人们日常使用的词意相同。它使用的运算符号和数学中使用的符号类似。因此便于人们理解。
二、BASIC语言是会话式的语言
使用BASIC语言可以通过键盘终端与字符显示器或电传打字机,进行人和计算机的对话。有的微型机当BASIC源程序送入计算机时,计算机能立即检查出词法错误(或拼写错误),并且通过电传机或字符显示器打印出来,用户可以立即在键盘上修正。当修改后的程序运行时,计算机又能查出程序中的语法错误并打印出来,用户可以再次进行修改,直到得到满意的结果。也有的微型机,当BASIC源程序送入计算机后,运行程序时同时检查词法及语法错误,并打印出错误信息。因此对初学者来说,调试BASIC程序是很方便的。另外还可通过一些命令监督和控制程序的运行。
三、BASIC语言有立即执行方式
BASIC语言可直接使用键盘运算,称为立即执行方式。这时计算机相当一台高级计算器。利用它可检查程序运行结果是否正确。
四、BASIC语言是一种小型的算法语言
在BASIC语言中数的范围,简单变量的数目,数组的维数及每维的大小,自定义函数的个数等均有一定限制,因此它的应用范围也受到一定限制。同时,科研、教学及生产中的一般题目用BASIC语言解决也是较方便的。
BASIC语言是国际通用的算法语言,有共同的规定,但每台计算机使用的BASIC语言会有—些差别,特别是不同机型的扩展BASIC差别较大,使用前可查阅说明书[10]

标准要求 编辑

ANSI X3.60-1978 FOR MINIMAL BASIC ANSIX3.60 ANSI X3.60 X3.60
ECMA-55 Minimal BASIC (January 1978) 已撤回[11]
ISO 6373-1984 Data processing; Programming languages; Minimal BASIC[12]
ANSI INCITS 113-1987 Information Systems - Programming Languages - Modules and Individual Character Input for Full BASIC(信息系统.程序设计语言.全BASIC的模块和个别字符输入)[13]
ECMA-116 BASIC (June 1986) 已撤回[11]
ISO/IEC 10279-1991 Information technology; programming languages; Full BASIC(信息技术 程序设计语言 全BASIC)[14]
词条图册 更多图册
参考资料
词条标签:
语言 计算机学