tiny basic - wikipedia, la enciclopedia libre

4

Click here to load reader

Upload: eebb

Post on 19-Oct-2015

25 views

Category:

Documents


5 download

DESCRIPTION

Tinyy basic

TRANSCRIPT

  • Tiny BASICDe Wikipedia, la enciclopedia libre

    El Tiny BASIC es una versin muy sencilla y simplificada de un intrprete del lenguaje de programacin BASIC que originalmente fue programadoen assembler y caba en tan solo 2 a 3 KB de memoria. Este pequeo tamao resultaba muy til en los comienzos de los primeros microcomputadores,a mediados de los aos 1970, cuando el tamao tpico de la memoria RAM era de 4 a 8 KB.

    ndice

    1 Historia2 Gramtica del Tiny BASIC3 Implementacin en lenguaje interpretado4 Vase tambin5 Enlaces externos

    Historia

    El primer lenguaje consisti nicamente en un documento de estndares, escrito principalmente por Dennis Allison, un miembro de la facultad deCiencias de la Computacin en la Universidad de Stanford. Bob Albrecht, del Homebrew Computer Club, lo inst a crear el estndar. l haba visto ellenguaje BASIC en minicomputadores y crey que encajara perfectamente con las nuevas mquinas como el Altair 8800 de MITS, que haba sidolanzada en enero de 1975.

    Bob y Dennis publicaron el documento de diseo en el boletn de noticias de People's Computer Company. En diciembre de 1975, Dick Whipple yJohn Arnold crearon un interprete del lenguaje que requiri solamente 3K de RAM. Bob y Dennis decidieron publicar esta versin y las correccionesa los documentos de diseo originales en un boletn de noticias dedicado al Tiny BASIC, que llamaron "Dr. Dobb's Journal of Tiny BASICCalisthenics and Orthodontia". En las ediciones de 1976 fueron publicadas varias versiones del Tiny BASIC, incluyendo descripciones de diseo y elcdigo fuente completo.

    Gramtica del Tiny BASIC

    La gramtica es listada abajo en la notacin de Backus-Naur. En el listado, un asterisco ("*") denota cero o ms del objeto a su izquierda - exceptopara el primer asterisco en la definicin de "term", que es el operador de la multiplicacin; objetos del grupo de parntesis; y un psilon ("") significael conjunto vaco. Como es comn en la notacin de la gramtica de lenguaje de programacin, la barra vertical ("|") distingue alternativas, al igual

    Tiny BASIC - Wikipedia, la enciclopedia libre http://es.wikipedia.org/wiki/Tiny_BASIC

    1 of 4 2/7/2014 2:49 AM

  • que ser listado en lneas separadas. El smbolo "CR" denota un retorno del carro (usualmente generado por la tecla "ENTER" de un teclado).

    line ::= number statement CR | statement CR statement ::= PRINT expr-list IF expression relop expression THEN statement GOTO expression INPUT var-list LET var = expression GOSUB expression RETURN CLEAR LIST RUN END

    expr-list ::= (string|expression) (, (string|expression)* ) var-list ::= var (, var)*

    expression ::= (+|-|) term ((+|-) term)* term ::= factor ((*|/) factor)* factor ::= var | number | (expression) var ::= A | B | C .... | Y | Z number ::= digit digit*

    digit ::= 0 | 1 | 2 | 3 | ... | 8 | 9 relop ::= < (>|=|) | > (

  • memoria y esfuerzo de implementacin, aunque los programas BASIC eran ejecutados algo lentamente. El CRLF en la ltima lnea simboliza unretorno del carro (CR) seguido por una nueva lnea (LF).

    TST lbl,string

    Si string coincide con la lnea BASIC, avanza el cursor sobre el string y ejecuta la siguiente instruccin IL; si la prueba falla, ejecutala instruccin IL en la etiqueta lbl

    CALL lbl Ejecuta la subrutina IL comenzando en lbl; guarda la direccin IL que sigue la llamada (CALL) en el stack de control

    RTN Retorna a la posicin del IL especificada en el tope del stack de control

    DONEReporta un error de sintaxis si despus de borrar los blancos a la izquierda, el cursor no est posicionado para alcanzar un retorno delcarro

    JUMP lbl Contina la especificacin del IL en la etiqueta especificada

    PRS Imprime caracteres del texto BASIC hasta pero no incluyendo el signo de interrogacin cerrado

    PRN Imprime el nmero obtenido al hacer un POP en el stack de expresiones

    SPC Inserta espacios para mover el cabezal de impresin a la prxima zona

    NLINE Enva un CRLF a la impresora

    Fuente: Dr. Dobb's Journal, Volume 1, Number 1, 1976, p.12.

    Vase tambin

    Palo Alto Tiny BASIC, por Li-Chen WangBASICDr. Dobb's JournalCopyleft

    Enlaces externos

    Tiny Basic User Manual (http://www.IttyBittyComputers.com/IttyBitty/TinyBasic/TBuserMan.htm) and Experimenter's Kit(http://www.IttyBittyComputers.com/IttyBitty/TinyBasic/TBEK.txt) by Tom Pittman (http://ittybittycomputers.com)Robert Uiterwyk's MICRO BASIC (http://www.swtpc.com/mholley/BASIC_2/Uiterwyk.htm) A MC6800 tiny BASIC later sold with theSWTPC 6800 computerMINOL (http://web.archive.org/web/19980702115208/http://www.signiform.com/erik/pubs/minol.htm) Erik Mueller's MINOL Tiny BASICwith strings for Intel 8080TBL (http://www.multicians.org/raf-tbl-definition.html) A similar IL to Tiny BASIC's, used in the first successful compilers for PL/I, Fortran,etc, on limited memory minicomputersM68000 Tiny BASIC (http://members.shaw.ca/gbrandly/68ktinyb.html) Based on Li-Chen Wang's Palo Alto Tiny BASIC, and published in

    Tiny BASIC - Wikipedia, la enciclopedia libre http://es.wikipedia.org/wiki/Tiny_BASIC

    3 of 4 2/7/2014 2:49 AM

  • the 100th edition of Dr. Dobb'sTiny BASIC (http://smallbasic.sourceforge.net/sb/tiny.txt) An implementation written in SmallBASICtinyBasic (http://www.aldweb.com/articles.php?lng=en&pg=7407) An implementation written in iziBasic (http://www.aldweb.com/articles.php?lng=en&pg=5350)Tiny BASIC (http://www.runbasic.com/?_page=tinybasic.bas) A live web version, ported to Run BASIC from iziBasicTinyBasic (http://www.thisiscool.com/tinybasic.htm) A port of Tom Pittman's TinyBasic C interpreter (http://www.ittybittycomputers.com/IttyBitty/TinyBasic/TinyBasic.c) to Java, C# and Adobe Flex. Includes live web versions.TinyBasic (http://www.tinybasic.de) A modern implementation on a 16bit Microcontroller.

    Obtenido de http://es.wikipedia.org/w/index.php?title=Tiny_BASIC&oldid=64595852Categoras: Lenguaje de programacin BASIC Historia del software

    Esta pgina fue modificada por ltima vez el 9 mar 2013, a las 13:43.El texto est disponible bajo la Licencia Creative Commons Atribucin Compartir Igual 3.0; podran ser aplicables clusulas adicionales.Lanse los trminos de uso para ms informacin.Wikipedia es una marca registrada de la Fundacin Wikimedia, Inc., una organizacin sin nimo de lucro.

    Tiny BASIC - Wikipedia, la enciclopedia libre http://es.wikipedia.org/wiki/Tiny_BASIC

    4 of 4 2/7/2014 2:49 AM