LOOKUP - BASIC Stamp Command Reference
Index
VAR
NIB
Result
VAR
BYTE
Index = 3
Result = 255
LOOKUP Index, [26, 177, 13, 1, 0, 17, 99], Result
DEBUG "Item ", DEC Index, " is: ", DEC Result
In this example, DEBUG prints "Item 3 is: 1." Note that the first location
number is 0. In the list above, item 0 is 26, item 1 is 177, etc.
If Index is beyond the end of the list, the result variable is unchanged. In
the example above, if index were greater than 6, the message would have
reported the result to be 255, because that's what Result contained before
LOOKUP executed.
Don't forget that text phrases are just lists of byte values, so they too are
eligible for LOOKUP searches, as in this example:
SYMBOL
Value = B0
SYMBOL
Result = B1
Index = 16
Result = " "
LOOKUP Index , ("The quick brown fox"), Result
DEBUG @Result
-- or --
Index
VAR BYTE
Result
VAR NIB
Index = 16
Result = " "
LOOKUP Index , ["The quick brown fox"], Result
DEBUG ASC? Result
DEBUG prints, "Result = 'f'" because the character at index item 16 is "f" in
the phrase, "The quick brown fox".
The examples above show LOOKUP working with lists of constants, but it
also works with variables and expressions also. Note, however, that
expressions are not allowed as argument on the BS1.
Page 184 • BASIC Stamp Programming Manual 2.0b • www.parallaxinc.com
2
2
2
2
e
p
sx
T
HE INDEX NUMBER OF THE FIRST
0,
1.
ITEM IS
NOT
U
SING TEXT IN THE VALUE LIST
1
2
2
2
2
e
p
sx
LOOKUP
CAN USE VARIABLES AND
EXPRESSIONS IN THE VALUE LIST
.
.
Need help?
Do you have a question about the BASIC Stamp 2e and is the answer not in the manual?