TI-BASIC 83
   HOME

TheInfoList



OR:

TI-BASIC 83,TI-BASIC Z80 or simply TI-BASIC, is the built-in programming language for the
Texas Instruments Texas Instruments Incorporated (TI) is an American technology company headquartered in Dallas, Texas, that designs and manufactures semiconductors and various integrated circuits, which it sells to electronics designers and manufacturers globa ...
programmable calculators Programmable calculators are calculators that can automatically carry out a sequence of operations under control of a stored program. Most are Turing complete, and, as such, are theoretically general-purpose computers. However, their user interf ...
in the
TI-83 series The TI-83 series is a series of graphing calculators manufactured by Texas Instruments. The original TI-83 is itself an upgraded version of the TI-82. Released in 1996, it was one of the most popular graphing calculators for students. In additio ...
. Calculators that implement TI-BASIC have a built in editor for writing programs. While the considerably faster Z80 assembly language is supported for the calculators, TI-BASIC's in-calculator editor and more user friendly syntax make it easier to use. TI-BASIC is interpreted.


Syntax

The syntax for TI-BASIC 83 is significantly different compared to most dialects of
BASIC BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
. For example, the language does not permit indentation with
whitespace characters In computer programming, whitespace is any character or series of characters that represent horizontal or vertical space in typography. When rendered, a whitespace character does not correspond to a visible mark, but typically does occupy an area ...
. It also depends on the TI calculator character set because it is
tokenized In computer science, lexical analysis, lexing or tokenization is the process of converting a sequence of characters (such as in a computer program or web page) into a sequence of ''lexical tokens'' ( strings with an assigned and thus identified ...
. Aside from these differences, TI-BASIC retains most
control flow In computer science, control flow (or flow of control) is the order in which individual statements, instructions or function calls of an imperative program are executed or evaluated. The emphasis on explicit control flow distinguishes an '' ...
statements: conditionals, various loops,
GOTO GoTo (goto, GOTO, GO TO or other case combinations, depending on the programming language) is a statement found in many computer programming languages. It performs a one-way transfer of control to another line of code; in contrast a function c ...
s and
Labels A label (as distinct from signage) is a piece of paper, plastic film, cloth, metal, or other material affixed to a container or product, on which is written or printed information or symbols about the product or item. Information printed dir ...
. Conditionals and loops use End to denote the end of their bodies. Each command can be placed on a new line, or separated by a colon for brevity. As such, the following snippets are identical in function.
:Disp "FOO
:Disp "BAR
and
:Disp "FOO:Disp "BAR
In the above example the closing double quotes can be omitted because the colon causes all open markers to be closed. Unlike many
high-level programming languages In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be easier to use ...
, TI-BASIC has only one assignment operator: . The rightward arrow assigns the value on the left to the variable on the right.


Conditionals

TI-BASIC includes simple constructs using the If statement. When the If token does not have a Then token on the following line it will only execute the next single command.
:If condition
:command
Where condition is any boolean statement. One benefit of this format is brevity as it does not include Then and End. An If statement may have more than one command in its body if, instead of a command, a Then token is placed.
:If condition
:Then
:command
:command
:End
When using Then, the body must be closed by an End token. One more construct utilizes Else. This allows one of two bodies to be executed.
:If condition
:Then
:body one
:Else
:body two
:End
In this case the calculator evaluates condition, if it evaluates to true body one is executed, however, if condition evaluates to false, body two is executed. Unlike many other programming languages, TI-BASIC has no else if construct, or any
switch statement In computer programming languages, a switch statement is a type of selection control mechanism used to allow the value of a variable or expression to change the control flow of program execution via search and map. Switch statements function som ...
.


Menu( statement

It does, however, have a Menu( statement which allows a user to select one of a number of options. Similar to a switch menus do have fallthrough. The general syntax is Menu(, a quoted title string, and followed by quoted option name and label name. An example:
:Menu("TITLE","FIRST",1,"SECOND",2,"THIRD",3)
:Lbl 1
:body one
:Lbl 2
:body two
:Lbl 3
:body three
The image is how the calculator renders the example above. In terms of functionality, the Menu('s flow is similar to some switch statement and cases, with a key difference that the user supplies the switch's usual expression. Like many switches and cases, the Lbl allows fall-through. For example, in the code above, if a user selects "FIRST", all three bodies are executed. However, selecting "SECOND" means only the second and third bodies are executed.


Loops

TI-BASIC includes three types of loops: For(, While, and Repeat.


For(

For( is similar to many other languages. It will repeat commands either a set number of times, or a variable number.
:For(variable,start,end
increment Increment or incremental may refer to: *Incrementalism, a theory (also used in politics as a synonym for gradualism) *Increment and decrement operators, the operators ++ and -- in computer programming *Incremental computing *Incremental backup, wh ...
:body :End


While and Repeat

While takes a single argument, a condition which must be fulfilled, without parentheses. Repeat functions the same way except that it loops when the given condition is false.
:While condition
:body
:End


DS<( and IS>(

DS<( and IS>( are specialized conditionals that are similar in overall function to If statements. However, they have the unique property of changing the value of the given variable.
:DS<(variable,value)
:Command


Data types and variables

TI-BASIC is strongly and mostly statically typed. Most variables, besides lists and programs, have predefined names and allowed types. Each variable can usually only hold one data type, the exceptions are the numeric and all list variables which can hold either real or complex values.


Numeric

There are 27 numeric variables, A through Z, and θ. These can hold two types of values, real and complex. All numbers are stored in the
RAM Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch ...
as
floating-point numbers In computing, floating-point arithmetic (FP) is arithmetic that represents real numbers approximately, using an integer with a fixed precision, called the significand, scaled by an integer exponent of a fixed base. For example, 12.345 can be r ...
with 14-digit mantissa, or
significand The significand (also mantissa or coefficient, sometimes also argument, or ambiguously fraction or characteristic) is part of a number in scientific notation or in floating-point representation, consisting of its significant digits. Depending on ...
, and an exponent range of -128 to 127. Complex numbers are stored as two consecutive reals.


List

Lists are also supported through the use of six built-in lists, and user created lists with up to five characters as the name. They are capable of holding up to 999 elements. A list may hold entirely real numbers or entirely imaginary numbers. Some functions in the calculator are able to operate over entire lists, via
Array programming In computer science, array programming refers to solutions which allow the application of operations to an entire set of values at once. Such solutions are commonly used in scientific and engineering settings. Modern programming languages tha ...
.


Matrix

Matrices are supported through the use of ten built-in matrices. Matrices do not support user created names or complex numbers.


Strings

There are ten built-in strings for storing variable text, named Str1 through Str0.


Other data types

The TI-83 family supports several more data types other than numeric, list, and matrix types: token based data, screen image data, and graph database data. These data types cannot be directly manipulated by TI-BASIC.


References


External links


Texas Instruments' official websiteTI-Basic Developer
unofficial documentation {{BASIC Calculators Programming languages BASIC programming language family