Chapter 15: Expressions and The Expression Stack
165
TI
-
89 / TI
-
92 Plus Developer Guide
Not for Distribution
Beta Version January 26, 2001
The representation of Binary Coded Decimal (BCD) floating-point numbers is
described in detail in the TI
-
89 / TI
-
92 Plus Sierra C™ Reference Manual,
chapter
2. Compiler
, section
2.9.4 Floating-Point Representations
. In simplest
terms they consist of a two byte quantity which represents the algebraic sign of
the number and the exponent or power of 10 by which the mantissa is multiplied.
This quantity is followed by a mantissa, which represents the fixed number of
significant digits in the number. Each nibble or hexadecimal digit of each byte
represents a single decimal digit.
Tagged floating-point numbers are represented by a FLOAT_TAG on top of a
14 digit floating-point number. The float number is placed as it would normally
appear in memory with the sign/exponent at the lowest address, and then, the
mantissa with the most significant digits at the lower address and the least
significant digits at the higher address. For example, the tagged floating-point
representation for the float approximation of
π
is:
0x40 0x00 0x31 0x41 0x59 0x26 0x53 0x58 0x98 FLOAT_TAG.
15.2.3. Variables, Units and Physical Constants
Variables are represented in two ways. Since single alphabetic characters (a–z)
are most often used to represent variables, each of them is identified by a unique
tag value. Thus, the variable a is represented by A_VAR_TAG, the variable b is
represented by B_VAR_TAG, and so on, through the variable z represented by
Z_VAR_TAG.
Multicharacter variable names and all single nonalphabetic character names are
identified by a VAR_TAG at both ends of the sequence of characters. The name
characters are placed between the VAR_TAG’s with the first character deepest.
The Operating System uses an extended ASCII character set described in
Table 4.2: Character Set. Valid name characters are specified in the
TI
-
89 / TI
-
92 Plus Guidebook. Names are case insensitive, so x and X are both
tokenized as X_VAR_TAG, and abc, Abc, AbC, and so on, are all tokenized as
VAR_TAG a b c VAR_TAG.
Variable Name Representation
x X_VAR_TAG
baz VAR_TAG b a z VAR_TAG
θ
VAR_TAG
θ
VAR_TAG
Theta VAR_TAG t h e t a VAR_TAG
å_295 VAR_TAG å _ 2 9 5 VAR_TAG
Table 15.4: Variable Name Examples