Você está na página 1de 5

A Linguagem BASIC

Pedro Henrique Luna de Farias Ricardo Enrique Pereira Scholz V tor Cavalcanti Dantas 30 de Abril de 2003 1- Introduo Este trabalho tem por objetivo prover uma viso geral sobre a linguagem BASIC (Beginners AllPurpose Symbolic Instruction Code), que adquiriu grande popularidade entre as decadas de 1960 e 1980 devido sua simplicidade. Seu grande mrito foi no se restringir a nenhum nicho do mercado na poca, sendo a primeira linguagem de programao de propsito geral a obter sucesso comercial. 2- Origem e Histria Concebida por John G. Kemeney (1926 - 1993) e Thomas Kurtz (1928 - ), BASIC nasceu no Dartmouth College, New Hampshire (USA) em 1964 e foi implementada pela primeira vez no General Eletrics 225 computing device. A idia era criar uma linguagem de propsito geral e de fcil aprendizagem, mais acessvel ao usurio. Kemeney ja havia trabalhado no Manhattan Project (1945) e, posteriormente, como assistente de Albert Einstein (1948-1949). Ele conheceu Kurtz em Dartmouth em 1956. Na poca, Kurtz acabara de entrar na faculdade, vindo da Princeton University e Kemeney era chefe do departamento de matemtica. Ambos tentaram o feito em projetos anteriores, sem obter sucesso. Foram eles: o Darsimco (Dartmouth Simplified Code) e o DOPE (Dartmouth Oversimplified Programming Experiment). As linguagens clssicas como COBOL ou FORTRAN j haviam sido criadas. COBOL, de fato, j havia se estabilizado como a maior linguagem de processamento de dados. FORTRAN por outro lado, tornou-se a principal linguagem de programao para aplicaes cientficas. Ambas, porem, no eram de fcil aprendizagem. Existiam regras excessivas para a sintaxe e estrutura dos programas. A verso final, chamada Dartmouth BASIC, tinha apenas 14 instrues. Devido sua simplicidade, BASIC ganhou popularidade imediata. Tornou-se vastamente utilizada em pequenas aplicaes comerciais e cientficas. BASIC teve o mesmo impacto no mundo das linguagens de programao quanto o PC teve nos grandes sistemas de computao. A popularidade e aceitao da linguagem BASIC pela comunidade de usurios, impulsionou todos os grandes fabricantes de computadores a criar suas proprias verses do BASIC. Quando os microcomputadores ou PC foram introduzidos no mercado, o BASIC encontrou um veculo mais conveniente de proliferao. A facilidade do BASIC o tornou a linguagem de programao padro no mundo da microcomputao. Desde 1964, o programa foi modificado para rodar em diferentes plataformas e distribudo sob o nome de BASICA, GW-BASIC, Quick-Basic, Visual Basic, TurboBasic e PowerBasic. O sistema operacional MS-DOS vem com um interpretador BASIC (o BASICA). O American National Standards Institute (ANSI) criou em 1978 uma verso padronizada da linguagem BASIC. A maioria das verses do BASIC atualmente disponveis incluem os recursos do padro ANSI. Nas sesses seguintes, temos como alvo a primeira implementao da linguagem, a Dartmouth BASIC, que foi desenvolvida entre os anos de 1963 e 1964.E a primeira de muitas implementaes que surgiram no decorrer dos anos 1960 e 1970. Algumas destas at popularizaram ainda mais a linguagem, no apenas pelo fato de a terem tornado mais simples (por exemplo, no exigindo mais a numerao das linhas de cdigo uma a uma), mas principalmente por terem tornado a linguagem mais
1

acessvel, como o exemplo da implementao da Microsoft Qbasic, que ja vinha instalada em mquinas com os sistemas operacionais MS-DOS ou Windows. 3- Projeto Os oito pontos principais na criao da linguagem foram: 1. Facilidade de aprendizado e uso por iniciantes; 2. A linguagem deveria ser de proposito geral; 3. A linguagem deveria prover recursos avanaados a serem adicionados para usurios experientes, continuando acessvel para os usuarios iniciantes; 4. Interatividade; 5. Eficincia; 6. As mensagens de erro deveriam ser claras e amigveis; 7. Independncia de hardware; 8. Independncia de sistema operacional; 4- Especificao A estrutura geral da linguagem BASIC padro melhor entendida em um programa prtico. O programa seguinte exibe na tela a mensagem ESTA A CADEIRA DE PLC: 10 REM: Este o primeiro programa de exemplo 20 PRINT "ESTA A CADEIRA DE PLC" 30 END Observando este programa, segue uma viso geral da estrutura da linguagem: Cada instruo deve aparecer em uma linha; Uma declarao no pode exceder 80 caracteres; Uma declaraao deve comecar por um inteiro positivo que representa o nmero da declarao; Duas declaraes no podem ter o mesmo nmero; As declaraes devem estar em ordem crescente; Cada nmero de declarao seguido de um comando ou palavra-chave de BASIC; Pode-se usar espao em branco por questes de legibilidade. No h restrio quanto a linhas brancas em um programa. O Microsoft BASIC porem, permite mais de uma sentena na mesma linha e o uso de palavras chave no necessita seguir linhas numeradas. Se o programador seguir as regras do BASIC padro, o programa continuar vlido no Microsoft BASIC ou outras implementaes. 4.1- Sentenas Elementares do BASIC Neste captulo descreveremos brevemente alguns dos comandos ou palavras-chave mais importantes do BASIC. 4.1.1- REM REM a abreviao de REMARKS (comentrios). Em tempo de execuo, quando o interpretador l as trs primeiras letras, formando uma palavra chave, ele sabe que o contedo que segue o comando
2

REM deve ser ignorado. usado puramente para documentao do programa. No h limites para a quantidade de comandos REM em um programa. O bom uso do comando pode ajudar no s o leitor do programa como o prprio criador, principalmente quando o programa antigo ou muito grande. 4.1.2- END O comando END foi essencial nas verses mais antigas do BASIC para indicar o fim de um programa. Em outros BASIC, como o Microsoft BASIC, seu uso no obrigatrio. Nestes casos, o programa termina na ltima linha ou na linha de maior nmero. Quando usado, necessrio que aparea na ltima linha. Qualquer comando que aparea aps o END irrelevante para o interpretador. O programa que segue ilustra a sintaxe desses dois comandos. 10 REM : Esta linha no vai ser executada 20 PRINT 30 PRINT "Esta a cadeira de PLC" 40 END 4.1.3- IF/THEN IF / THEN um comando condicional. Aps o IF, deve haver uma sentena booleana seguida do THEN, que por sua veze seguido de um comando qualquer. Se a sentena booleana aps o IF for verdadeira, o comando que segue o THEN executado, caso contrrio desconsidera-se o comando que segue o THEN e executa-se a linha seguinte. 4.1.4- PRINT No BASIC, o comando PRINT um comando de escrita. Sendo assim, pode ser usado tanto para escrever na tela, como em dispositivos de armazenamento de dados ou impressoras. 4.1.5- INPUT utilizado para captao de dados. Aps o comando INPUT deve vir o nome da varivel onde o valor captado ser armazenado. 4.1.6- GOTO O comando GOTO utilizado para mudanas de fluxo incondicionais. Deve vir seguido do nmero da linha para a qual se deseja mudar o fluxo. Posteriormente, mudanas foram feitas para permitir o uso de rtulos em vez das linhas numeradas. 4.2- O conjunto de caracteres O conjunto de caracteres do BASIC consiste nos seguintes elementos: 1. Alfabeto: A, B, C, ..., Z; 2. Dgitos: 0, 1, 2, ..., 9; 3. Caracteres Especiais: + - / ( ) . , $ ; : + <> . O smbolo (circunflexo) usado para denotar operador de exponenciao, o smbolo * (asterstico) usado para denotar multiplicao e os outros smbolos tm seus significados usuais. O espao em branco tambm considerado como um carcter.

4.3- Constantes e Variveis BASIC permite as constantes numricas e textuais. Constantes numricas so formadas por uma seqncia de dgitos 0, 1, 2, ..., 9 e podem incluir um ponto decimal. Pode ser um inteiro ou um nmero real. Por exemplo: 383, +57, 0, 6.2 and 6.15E4 so constantes vlidas. O numero 6.15E4, de fato, representa 6.15 104. A notao E usada para representar a forma exponencial. O nmero aps o E o expoente, que pode ser positivo ou negativo. Entretanto, seu tamanho no pode exceder dois dgitos. importante considerar que: BASIC no faz distino entre inteiros e fraes. Comandos no so permitidos em constantes numricas. O limite de nmero de dgitos que podem ser usados varia de computador para computador. Normalmente o tamanho mximo de oito dgitos. Uma constante textual consiste em uma seqncia de caracteres e deve estar declarada entre aspas. Pode conter espaos em branco porm no pode conter aspas. So usadas para representar quantidades no-numricas como nomes, endereos, etc. Por exemplo, CABRAL, Pedro Alvares, Soma = Rs75, 163 so algumas constantes textuais vlidas. Em BASIC, as variveis podem ser numricas ou textuais. As variveis numricas podem assumir valores numricos e so representadas por um carcter alfabtico seguido ou no por outro ou um dgito. Por exemplo: A, C, A2, ABC, A6 etc, so variveis numricas vlidas. Uma varivel textual representada por caracteres alfabticos seguidos do smbolo dollar ($), que deve ser o ltimo carcter. Por exemplo, A1$, PLC$, LIVRO1$, etc., so variveis textuais vlidas. 5- Utilizao A linguagem BASIC foi originalmente desenvolvida para ser utilizada por usurios dos novos sistemas time-sharing, e para ter um aprendizado simples, que possibilitasse o seu acesso a programadores iniciantes. Houve a preocupao tambm de atender a programadores avanados, mas isto foi resolvido criando-se comandos (avanados) que poderiam ser utilizados opcionalmente, no necessitando do programador iniciante o seu entendimento. Programadores profissionais desde o incio trataram a linguagem como amadora, por ser muito simples, e por suas implementaes mais populares serem interpretadas, e no compiladas. De fato, a aplicao mais visvel de BASIC foi no desenvolvimento de jogos e pequenos aplicativos nolucrativos direcionados principalmente ao entretenimento, desenvolvidos por programadores independentes, em sua maioria muito jovens. No mercado de aplicaes comerciais e cientficas, na poca os produtos mais expoentes das grandes empresas de desenvolvimento de software, o impacto de BASIC foi muito pequeno. 6- Exemplos 6.1- Comparador Este primeiro programa de exemplo recebe como entrada pelo teclado dois nmeros reais e indica o maior dos dois. 100 PRINT "Digite o primeiro nmero: " 101 INPUT num1
4

102 PRINT "Digite o segundo nmero: " 103 INPUT num2 104 IF num2 > num1 THEN GOTO 300 200 PRINT "O maior nmero o primeiro: ",num1 201 GOTO 400 300 PRINT "O maior nmero o segundo: ",num2 400 END 6.2- Fatorial Este segundo programa recebe um nmero natural e calcula o seu fatorial. 100 PRINT "Digite um nmero inteiro no-negativo: " 101 INPUT n% 102 IF n% < 0 THEN GOTO 101 103 fat% = 1 104 i% = n% 200 IF i% > 0 THEN GOTO 300 201 GOTO 400 300 fat% = fat% * i% 301 i% = i - 1 302 GOTO 200 400 PRINT "O fatorial de ",n%," ",fat%,"." 401 END Referncias [1] MARCONI, Andrea M.; http://www.kbasic.org/1/history.php3; 30 de Abril de 2003. [2] National Institute of Open Schooling Site, http://www.nos.org/htm/basic1.htm; 30 de Abril de 2003. [3] MOHANTY, Joy G.; http://www.personal.psu.edu/faculty/j/g/jgm157/Presentation choices.doc; 30 de Abril de 2003. [4] Wikipedia; http://www.wikipedia.org/wiki/BASIC programming language; 30 de Abril de 2003.

Extrado 07/Ago/05 de: http://fit.faccat.br/downloads/basic.pdf